是否可以通知父母已呈现所有子视图?
我知道我们有像ngAfterViewChecked()
这样的生命周期钩子,但在渲染子视图后会被触发吗?
答案 0 :(得分:3)
文档说明(约ngAfterViewChecked
):
在Angular检查组件的视图和子视图后进行响应。 在
ngAfterViewInit
之后和之后的每个ngAfterContentChecked()
之后调用。 仅限组件的挂钩。
所以,是的,子视图会触发此回调。问题是您无法分辨哪个视图已更新。如果您想了解要更新的特定视图,我建议将它们包装在Components
中,在每个视图中覆盖ngAfterViewChecked
并使用EventEmitter
(如Output
)通知父{ {1}}。如果您想要监听初始渲染,请覆盖Component
。
更新#1:
如果您只关心第一个渲染,并且不必区分视图,那么它就足以覆盖ngAfterContentChecked
:
在Angular初始化组件的视图和子视图后做出响应 观点。在第一个
ngAfterViewInit
之后调用一次。一个 仅限组件钩。