Angular 2组件构造函数 vs OnInit
Angular 2组件构造函数 vs OnInit
这个问题已经在这里有答案了:
如果我想让函数x在每次组件加载时都发生,无论是第一次还是第五次加载,或者在导航到不同站点并返回时都发生。
我应该把函数x放在哪里?组件构造函数还是OnInit中?
admin 更改状态以发布 2023年5月20日
构造函数是TypeScript类的预定义默认方法。Angular与constructor
没有关联。通常我们使用constructor
来定义/初始化一些变量,但当我们有与Angular绑定相关的任务时,我们转向Angular的ngOnInit
生命周期钩子。 ngOnInit
在构造函数调用后立即调用。我们也可以在构造函数中做同样的工作,但最好使用ngOnInit
启动Angular的绑定。
为了使用ngOnInit
,我们必须从核心库中导入此钩子:
import {Component, OnInit} from '@angular/core'
然后我们在导出的类中实现此接口(这不是强制实现此接口,但通常我们这样做)。
同时使用的示例:
export class App implements OnInit{ constructor(){ //called first time before the ngOnInit() } ngOnInit(){ //called after the constructor and called after the first ngOnChanges() } }
更多详情请参见:构造函数与ngOnInit之间的区别