我有一个网格,如果我点击该行,则会出现弹出窗口。在这个弹出窗口中,我有两个选项卡,其中一个以这种方式加载
2000
在这个组件里面我有
<div id="menu2" class="tab-pane fade">
<app-user-groups [userId]="userModel.ID_User"></app-user-groups>
</div>
然后奇怪的事情发生了。首先,只是在加载网格时,
@Input()
userId: number;
ngOnInit() {
this.getUserGroups(this.userId);
}
也启动,userId设置为undefined。如何使ngOnInit仅在我点击表格的行时启动?
答案 0 :(得分:1)
这是因为userId是异步加载的,所以当视图最初呈现时,this.userId是未定义的。 您基本上只是根据原始值(未定义)看到onInit调用。
试试这样:
@Input()
userId: number;
ngAfterViewInit() {
this.getUserGroups(this.userId);
}