曾经的一道面试题,没有答上来
一、构造器constructor是类的本身属性,跟angular没有关系;生命周期钩子是由angular定义的;
二、构造器constructor会在类生成实例时调用;生命周期钩子贯穿angular生命周期,如下
生命周期的顺序
ngOnChanges
:当被绑定的输入属性的值发生变化时调用,首次调用一定会发生在ngOnInit
之前。ngOnInit
:在第一轮ngOnChanges
完成之后调用。ngDoCheck
:在每个Angular变更检测周期中调用。ngAfterContentInit
:当把内容投影进组件之后调用。ngAfterContentChecked
:每次完成被投影组件内容的变更检测之后调用。ngAfterViewInit
:初始化完组件及其子视图之后调用。ngAfterViewChecked
:每次做完组件视图和子视图的变更检测之后调用。ngOnDestroy
:当Angular每次销毁指令/组件之前调用。
三、构造器的作用是依赖注入,注入需要的属性;生命周期钩子是将关键时刻进行暴露出来并赋予行动的能力。