Angular 单击表格的行时启动ngOnInit
我有一个网格,如果我点击该行,就会出现弹出窗口。在这个弹出窗口中,我有两个选项卡,其中一个以这种方式加载Angular 单击表格的行时启动ngOnInit,angular,Angular,我有一个网格,如果我点击该行,就会出现弹出窗口。在这个弹出窗口中,我有两个选项卡,其中一个以这种方式加载 <div id="menu2" class="tab-pane fade"> <app-user-groups [userId]="userModel.ID_User"></app-user-groups> </div> 然后奇怪的事情发生了。首先,当网格加载时 ngOnInit() { this.ge
<div id="menu2" class="tab-pane fade">
<app-user-groups [userId]="userModel.ID_User"></app-user-groups>
</div>
然后奇怪的事情发生了。首先,当网格加载时
ngOnInit() {
this.getUserGroups(this.userId);
}
此外,launch和userId设置为undefined。如何使ngOnInit仅在单击表格的行时启动 这是因为userId是异步加载的,因此当视图最初呈现时,This.userId是未定义的。 您基本上只看到基于原始值(未定义)的onInit调用 试着这样做:
@Input()
userId: number;
ngAfterViewInit() {
this.getUserGroups(this.userId);
}
在组件中导入AfterViewInit并使用ngAfterViewInit(){}调用
ngOnInit
时您无法控制,因为它是更改检测过程的一部分,请阅读
@Input()
userId: number;
ngAfterViewInit() {
this.getUserGroups(this.userId);
}