如果我尝试选择存在于ngIF指令中的DOM元素,则该元素为空。如果我删除ngIF,那么我可以选择它。
ngAfterViewInit() {
const outer = document.getElementById('external-events');
console.log(outer);
}
组件模板中的代码,未找到div:
<div *ngIf="groupedPatchGroups">
<div id="external-events">
stuff here
</div>
<br />
</div>
去掉*ngIf和外部报告div的内容。
ngAfterViewInit是否在数据返回之前运行以确定ngIF发生了什么?我希望ngIF首先运行,而ngAfterViewInit是最后运行的东西。
注意:groupedPatchGroups 值在 ngOnInit 中设置。
试试这个,
constructor(private cdref: ChangeDetectorRef)
ngAfterViewInit() {
this.cdref.detectChanges();
const outer = document.getElementById('external-events');
console.log(outer);
}
DOM 元素仅在 ngIf 中的表达式为真时使用 ngIf 创建,如果 ngIf 中的表达式为假 DOM 元素将不会创建。在您的情况下,如果分组补丁组= true,那么只有你会得到 div 在 ngIf div 中。
访问新创建的元素的一种方法是在 div
上设置模板引用变量:
<div *ngIf="groupedPatchGroups">
<div #externalEvents>
stuff here
</div>
<br />
</div>
并订阅ngAfterViewInit
中的QueryList.changes
事件。您还可以在订阅前检查元素是否已经存在于DOM中。
@ViewChildren("externalEvents") externalEvents: QueryList<ElementRef>;
ngAfterViewInit() {
console.log("Before changes", this.externalEvents.first); // Maybe already present
this.externalEvents.changes.subscribe((elements) => {
// Do something with elements or with this.externalEvents
let element = this.externalEvents.first;
console.log("Changes detected", element);
...
}
}
请参阅此堆栈闪电战以获取演示。
问题内容: 我的主文件夹中有一个脚本。 当我导航到该文件夹并输入时,我得到 。 当我使用时,我得到 。 为什么会发生这种情况,我该如何解决? 问题答案: 没有权限 为了运行脚本,文件必须 设置可执行权限 。 为了完全理解Linux 文件权限,您可以学习命令的文档。chmod是 change mode 的缩写,是用于更改文件的权限设置的命令。 要阅读本地系统的chmod文档,请运行或从命令行运行
问题内容: 我已经在Raspberry Pi上的Occidentalis操作系统(Raspbian的变体)上安装了OpenCV,使用的是在此处找到的jayrambhia的脚本。它安装了版本2.4.5。 当我尝试import cv2使用Python程序时,收到以下消息: 该文件cv2.so存储在 在中也有文件夹,这可能是个问题,但我不确定。 这可能是路径错误吗?感谢你的任何帮助,我是Linux的新手
中还有名为Python3.2和Python2.6的文件夹,这可能是一个问题,但我不确定。 这可能是路径错误吗?感谢任何帮助,我是Linux的新手。
所以,我最近创建了我的第一个插件,叫做BetterTeaming。该插件正在使用插口api。插件发布后,一段时间后,有人建议我使用Maven从编译的jar中删除插口api依赖项。这应该缩小文件大小。然而,我对Maven了解不多。我成功地设置了它,并将文件复制到Maven文件夹(包括层次结构截图),但每次我在本地服务器Minecraft上加载插件时,它都会向我抛出ClassNotFoundExcep
我试图用JavaWebStart来代替Javaapplet,但每次我运行。jnlp文件要么直接从web服务器,要么直接从我的计算机。它给了我一个错误。 我看到JavaWeb启动启动屏幕,然后出现默认进度条。它下载,然后验证我的罐子,但不久之后,以下错误消息出现“无法启动应用程序”。 我在Temp文件夹中没有看到任何看起来像tmp_cache的文件。 这是我的JNLP文件: 我尝试过的事情: 从我的
在本例中,我使用Angular并希望使用(从版本4开始可用): 如何使用实现相同的行为?