angular5理解生命周期

先来看下文档:

按照顺序有八个:

1、ngOnChanges)=》简单理解为当数据绑定输入属性的值发生变化时调用;

2、ngOnInit() =》 在调用完构造函数、初始化完所有输入属性并首次调用过ngOnChanges之后调用;

3、ngDoCheck()=》 每当对组件或指令的输入属性进行变更检测时就会调用。可以用它来扩展变更检测逻辑,执行自定义的检测逻辑;

4、ngAfterContentInit ()=》 ngOnInit完成之后,当组件或指令的内容(ng-content)已经初始化完毕时调用;

5、ngAfterContentChecked() =》 每当组件或指令的内容(ng-content)做变更检测时调用;

6、ngAfterViewInit () =》 当ngAfterContentInit完毕,并且组件的视图已经初始化完毕时调用。只适用于组件;

7、ngAfterViewChecked () =》 当组件视图每次执行变更检测时调用。只适用于组件;

8、ngOnDestroy() =》 只在实例被销毁前调用一次;

其中1/2/3/8是指令和组件共同可用的,4/5/6/7只适用于组件;

写法:

export class XxxComponent implements 
  OnInit, 
OnChanges, DoCheck,
AfterContentInit, AfterContentChecked,
AfterViewChecked, AfterViewInit,
OnDestroy { // balabalabala...  }

 

原文地址:https://www.cnblogs.com/fmixue/p/8510944.html