【发布时间】:2017-03-29 20:25:57
【问题描述】:
我有点理解变化检测在 Angular 2 中的工作原理,但我真的很难将关于变化检测的 AngularJS 方法转移/更改到 NG2。
假设我有一个组件,它采用单个 @Input() anObject 并具有单个函数 logAllProperties() 出于参数考虑,它将所有属性记录到控制台。 我要做的就是调用 logAllProperties() 每次 anObject 更改无论如何。
我知道将对象视为不可变的(使用 Immutable.js 之类的外部库或强制整个对象更改,即使是较小的属性更改)将触发 ngOnChange,但无论如何只要更改就调用函数除了这些之外,或者使用我理解的 DoCheck 可能效率极低。
除了“有没有办法”,什么是正确的方法来做这样的事情?我是 Angular2 的新手,所以如果 Immutable 和 Observables 是要走的路,我很乐意学习正确的方法。
提前致谢
【问题讨论】:
标签: javascript angular angular2-changedetection