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

标签 javascript angular

<分区>

我知道 ngOnInit 是 Angular 特定的语法,而构造函数是 Typescript/ES2015 类语法。但是当谈到它们在 Angular 2 Components 中的使用和执行时,有什么区别?

最佳答案

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

ngOnInit() 是一个生命周期 Hook ,稍后由 Angular2 更改检测调用。 当 @Input() 被变化检测更新时,ngOnChanges(changes) 被调用。 在第一次调用 ngOnInit() 时调用 ngOnChanges(changes) 之后。

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

关于javascript - 在 Angular 2 组件定义中使用 ngOnInit 和构造函数之间的实际区别是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39566339/

相关文章:

javascript - 在另一个选项卡中设置 ClearTimeout

javascript - Angular 6 - 在应用程序外部运行 javascript 方法

javascript - 图标在 Angular 4 的导航中消失

javascript - 将日期时间转换为 "passed time"直到当前时间

javascript - jQuery 文件上传导致浏览器崩溃

javascript - jQuery 验证名称属性包含方括号的字段?

angular - Karma 单元测试/STORE - 状态未定义

javascript - Angular2 - 如何使用非数组结果的异步管道?

arrays - 按嵌套对象数组中的属性过滤对象数组

Sublime 中的 Javascript 执行错误