处理 Angular 4 生命周期钩子

Posted

技术标签:

【中文标题】处理 Angular 4 生命周期钩子【英文标题】:Dealing with Angular 4 Lifecycle Hooks 【发布时间】:2018-05-28 01:28:07 【问题描述】:

所以我正在使用滚动库进行 DOM 操作,我需要做的一件事是根据组件上 DOM 元素的位置计算动画的结束。问题是当我尝试获取元素的高度时,它没有给我正确的高度。

生命周期钩子很奇怪,因为目前我在 AfterViewInit 有它并且我已经尝试过 AfterContentInit 但这仅在我将它放入 AfterViewChecked 并等到它运行第 50 次时才有效。

所以问题是,等待 Angular 中的所有 DOM 完成是否有最佳实践?或者只是做这个解决方法的唯一方法。这似乎真的是一个糟糕的方法......

【问题讨论】:

【参考方案1】:

这可能仍然不是最好的解决方法,但我目前在 ngOnInit 上使用 $(document).ready() 以在一定程度上实现此结果。当然你需要使用 jQuery。

【讨论】:

以上是关于处理 Angular 4 生命周期钩子的主要内容,如果未能解决你的问题,请参考以下文章

Angular 2 动态组件加载 ngOnChanges 生命周期钩子调用

Angular2+ routeReuseStrategy 生命周期钩子

Angular:生命周期钩子是组件可用的输入数据

Angular 生命周期钩子和渲染组件

初始化所有孩子后的Angular 2生命周期钩子?

Angular2 生命周期钩子方法中的变更检测