30
2020
04

请解释Angular 2应用程序的生命周期hooks是什么?

Angular 2组件/指令具有生命周期事件。是由@angular/core管理的。


@angular/core会创建组件。渲染它。创建并呈现它的后代。当@angular/core的数据绑定属性更改时,处理就会更改,在从DOM中删除其模板之前,就会销毁掉它。Angular提供了一组生命周期hooks(特殊事件)。能够被分接到生命周期中,并在须要时执行操作。


构造函数会在全部生命周期事件之前执行。


每一个接口都有一个前缀为ng的hook方法。比如,ngOnint界面的OnInit方法,这种方法必须在组件中实现。 


一部分事件适用于组件/指令,而少数事件仅仅适用于组件。


ngOnChanges:当Angular设置其接收当前和上一个对象值的数据绑定属性时响应。

ngOnInit:在第一个ngOnChange触发器之后,初始化组件/指令。

这是最经常使用的方法。用于从后端服务检索模板的数据。


ngDoCheck:检測并在Angular上下文发生变化时执行。

每次更改检測执行时,会被调用。


ngOnDestroy:在Angular销毁指令/组件之前清除。取消订阅可观察的对象并脱离事件处理程序,以避免内存泄漏。

组件特定hooks:


ngAfterContentInit:组件内容已初始化完毕

ngAfterContentChecked:在Angular检查投影到其视图中的绑定的外部内容之后。

ngAfterViewInit:Angular创建组件的视图后。

ngAfterViewChecked:在Angular检查组件视图的绑定之后。

« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。