在我的angular应用程序中,我需要从父组件到子组件调用一个函数。
此子组件位于mat-tab内部,并且是延迟加载的,mat-tab位于mat-dialog内,因此,在关闭mat对话框之前,该子组件不存在。
如果仅在打开对话框时调用该函数,则未定义子组件,因此要解决此问题,请使用setTimeout:
if (tabSelected == 2) {
setTimeout(() => {
this.contactLensSearchComponent.loadItems()
});
} else if (tabSelected == 3) {
....
现在看来可行,但这是一种可靠的方法还是我很幸运?