我是Angular 2的新手。为什么在组件或指令的构造函数之后调用的第一个钩子不是ngOnInit
?
来源:https://angular.io/docs/ts/latest/guide/lifecycle-hooks.html
我是Angular 2的新手。为什么在组件或指令的构造函数之后调用的第一个钩子不是ngOnInit
?
来源:https://angular.io/docs/ts/latest/guide/lifecycle-hooks.html
ngOnInit()
在第一次调用 ngOnChanges()
后被调用。
这确保了在调用 ngOnInit()
时,与输入绑定的初始值是可用的。而 ngOnChanges()
在输入值更新后被调用。
关于第一个 ngOnChanges()
和 ngOnInit()
的顺序,有很多讨论,但没有任何一个论点被认为足够强大以改变任何事情。
ngOnChanges
在ngOnInit
之后被调用,我可能会遇到什么问题? - Steven LiekensngOnInit
中可能需要什么样的内容,而这些内容没有初始值就无法实现。我仍然认为更有可能需要从ngOnInit
中获取一些东西,而不是相反的情况。 - Steven LiekensngOnChanges()
之前运行。当调用ngOnInit()
时,输入绑定的初始值已经传递给组件,只有后来从异步调用中获取的内容通常还不可用。 - Günter Zöchbauer