浅谈Angular中的生命周期钩子

Angular提供了生命周期钩子,把这些关键生命时刻暴露出来,赋予我们在它们发生时采取行动的能力。可以将钩子函数理解为在合适的时候做合适的事情。
1.ngOnChanges()
当Angular(重新)设置数据绑定输入属性时响应。 该方法接受当前和上一属性值的SimpleChanges对象
当被绑定的输入属性的值发生变化时调用,首次调用一定会发生在ngOnInit()之前。

2.ngOnInit()
在Angular第一次显示数据绑定和设置指令/组件的输入属性之后,初始化指令/组件。
在第一轮ngOnChanges()完成之后调用,只调用一次。

3.ngDoCheck()
检测,并在发生Angular无法或不愿意自己检测的变化时作出反应。
在每个Angular变更检测周期中调用,ngOnChanges()和ngOnInit()之后。

4.ngAfterContentInit()
当把内容投影进组件之后调用。
第一次ngDoCheck()之后调用,只调用一次。只适用于组件。

5.ngAfterContentChecked()
内容投影:父组件写在子标签之间的内容会被渲染到子模板的ng-content中去,类似vue的slot。
组件及子组件每次检查内容时调用
每次完成被投影组件内容的变更检测之后调用。
ngAfterContentInit()和每次ngDoCheck()之后调用 ,只适合组件。

6.ngAfterViewInit()
初始化完组件视图及其子视图之后调用。
第一次ngAfterContentChecked()之后调用,只调用一次。只适合组件。

7.ngAfterViewChecked()
每次做完组件视图和子视图的变更检测之后调用。
ngAfterViewInit()和每次ngAfterContentChecked()之后调用。只适合组件。

8.ngOnDestroy
当Angular每次销毁指令/组件之前调用并清扫。 在这儿反订阅可观察对象和分离事件处理器,以防内存泄漏。

最后
钩子函数不需要全部设置,根据自己的需求,有选择的去使用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值