我可能在想这个,所以我在这里。 :)
注意:在下面的示例中,对象“ctrl”是组件的控制器别名。 var ctrl = this;
比方说,我们有一个具有两个绑定,其中一个是可选的组件:
bindings: {
params: '<',
company: '<?'
}
公司有时是可用的,有时不是。
的$ onChanges看起来像:
ctrl.$onChanges = function(changes) {
if (changes.params || changes.company) {
console.log('executed');
}
}
看来,当两者绑定更新,$ onChanges运行两次。第一次,ctrl.company(绑定)在组件中是空的,即使我确实用值更新了该绑定。第二次,ctrl.company有它的价值。
现在,我明白OR操作可能不正确。我只是有点不确定$ onChanges的功能。
如果我对问题的描述不清楚,我会更新。
在此先感谢。