$postLink 与 $OnInit 和 angularjs 中的组件生命周期顺序

$postLink vs $OnInit and component life cycle order in angularjs

嘿,我有构建 angularjs 组件的经验,我只是想知道为什么每个组件生命周期中都有一个 $postlink 周期。 我知道 $postLink 循环这个钩子是在控制器的元素及其子元素被链接之后调用的。当组件元素已编译并准备就绪时,将触发此挂钩。

但我有几个问题:

1.Does 所有 DOM 操作必须在 $postlink 循环中或附加事件侦听器?为什么不为此目的制定指令?

2.What 阻止我在 $OnInit 中进行所有 DOM 操作,$OnInit 循环和 $postlink 循环之间有什么区别?

再次感谢

1。指令或组件 postLink?

您可以使用这两个选项。在我的公司,我们更喜欢使用指令进行 DOM 操作。并保持组件简单 ;).

2。 onInit() 与 postLink()

答案是 onInit 和 postLink 的区别。

onInit() 在您的绑定准备就绪时开始,组件 DOM 完成。但是他们的 DOM 个孩子还没有准备好。

postLink() 在组件 DOM 和您的 DOM 子组件准备就绪时运行。

然后,如果您只需要使用组件元素,请使用 onInit()。但是,如果您也需要使用 childrens,请使用 postLink()。另外,请记住我的观点 1。