Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/403.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在Angular 2组件定义中使用ngOnInit和构造函数的实际区别是什么?_Javascript_Angular - Fatal编程技术网

Javascript 在Angular 2组件定义中使用ngOnInit和构造函数的实际区别是什么?

Javascript 在Angular 2组件定义中使用ngOnInit和构造函数的实际区别是什么?,javascript,angular,Javascript,Angular,我知道ngOnInit是特定于角度的语法,而构造函数是Typescript/ES2015类语法。但是在Angulars 2组件中使用和执行时,有什么区别呢?当Angulars DI创建类实例时,会调用构造函数 ngOnInit()是一个生命周期挂钩,稍后由Angular2变更检测调用。 当通过更改检测更新@Input()s时,将调用ngochanges(changes)。 在第一次调用ngonit()时调用ngOnChanges(changes)之后 因此,主要区别在于已运行更改检测,并且已初始

我知道ngOnInit是特定于角度的语法,而构造函数是Typescript/ES2015类语法。但是在Angulars 2组件中使用和执行时,有什么区别呢?

当Angulars DI创建类实例时,会调用构造函数

ngOnInit()
是一个生命周期挂钩,稍后由Angular2变更检测调用。 当通过更改检测更新
@Input()
s时,将调用
ngochanges(changes)
。 在第一次调用
ngonit()
时调用
ngOnChanges(changes)
之后

因此,主要区别在于已运行更改检测,并且已初始化
@Input()
s。

可能的重复