Angular 2 生命周期钩子


Angular 2 应用程序经历了一整套流程,或者具有从启动到应用程序结束的生命周期。

下图显示了 Angular 2 应用程序生命周期中的整个流程。

Lifecycle

以下是每个生命周期钩子的描述。

  • ngOnChanges :当数据绑定属性的值发生变化时,则调用该方法。

  • ngOnInit :每当Angular首次显示数据绑定属性后的指令/组件的初始化发生时调用。

  • ngDoCheck :这是为了检测并作用于Angular不能或不会自己检测到的变化。

  • ngAfterContentInit : Angular 将外部内容投射到组件的视图中后调用。

  • ngAfterContentChecked : 这是在Angular检查投影到组件中的内容后响应调用的。

  • ngAfterViewInit : 这个在Angular初始化组件的视图和子视图后调用。

  • ngAfterViewChecked : 这是在Angular检查组件的视图和子视图后响应调用的。

  • ngOnDestroy : 这是Angular销毁指令/组件之前的清理阶段。

以下是实现一个生命周期钩子的示例。在里面 app.component.ts 文件,放置以下代码。

import { 
    Component
} from '@angular/core';  

@Component ({ 
    selector: 'my-app',
    template: '<div> {{values}} </div> '
}) 

export class AppComponent { 
    values = '';
    ngOnInit() {
        this.values = "Hello";
    }
}

在上面的程序中,我们调用 ngOnInit 生命周期钩子要特别提到 this.values 参数应设置为“Hello”。

保存所有代码更改并刷新浏览器后,你将获得以下输出。

Hello