angular2的生命周期钩子的使用情况

angular 2 Directive Lifecycle

angular2 中组建继承于指令,并扩展了与ui视图相关的属性。

angular2 指令的生命周期是用来记录指令从创建,应用及销毁的过程。

angular2 提供了一系列与指令生命周期相关的钩子,便于我们监控指令生命周期的变化,并执行相关的操作。

指令与组件并有的钩子

1,ngOnChanges:当数据绑定输入属性的值发生变化时调用,主要用于监测组件输入属性的变化

2,ngOnInit:在第一次ngOnChange之后调用,并且只调用一次。主要用于执行组件的其它初始化操作或获取组件输入的属性值。

3,ngDoCheck: 自定义的方法,用于检测和处理值的变化,使用该方法,可以自定义我们的检测逻辑。

8,ngOnDestroy: 指令销毁前调用ngOnDestroy方法。它主要用于执行一些清理操作,比如:移除事件监听,清除定时器。

组件特有的钩子

4,ngAfterContentInit:在组件内容初始化之后调用

5,ngAfterContentChecked:组件每次检查内容时调用

6,ngAfterViewInit: 组件相应的视图初始化时调用

7,ngAfterViewChecked: 组件每次检查视图时调用

构造函数 constructor 组件的构造函数会在所有的生命周期钩子之前调用,它主要用于依赖注入(注入service)或执行简单的数据初始化操作

比如使用primeng的picklist 组建时就需要先在ngOnInit中初始化两个空数组