在Angular6中,可以通过使用ViewChild
装饰器和AfterViewInit
生命周期钩子来等待app.component
中的ngOnInit
完成,然后在子触发器中执行ngOnInit
。
首先,在子组件中引入ViewChild
和AfterViewInit
:
import { Component, ViewChild, AfterViewInit } from '@angular/core';
然后,在子组件类中使用ViewChild
装饰器来获取父组件的实例:
export class ChildComponent implements AfterViewInit {
@ViewChild(AppComponent) appComponent: AppComponent;
ngAfterViewInit() {
// 在这里可以访问父组件的方法和属性
this.appComponent.ngOnInit();
}
}
在上面的代码中,我们使用ViewChild
装饰器来获取AppComponent
的实例,并将其赋值给appComponent
属性。然后,在ngAfterViewInit
生命周期钩子中,我们可以访问父组件的方法和属性,包括ngOnInit
方法。
这样,当父组件的ngOnInit
方法完成后,子组件的ngAfterViewInit
生命周期钩子会被触发,从而可以在子触发器中执行ngOnInit
方法。
需要注意的是,为了确保父组件的ngOnInit
方法已经完成,我们将子组件的逻辑放在ngAfterViewInit
生命周期钩子中,而不是ngOnInit
中。
关于Angular6的更多信息,您可以参考腾讯云的相关产品和文档:
请注意,以上链接仅供参考,具体产品和文档可能会有更新和变动。
领取专属 10元无门槛券
手把手带您无忧上云