我可能在想這個,所以我在這裏。 :)
注意:在下面的示例中,對象「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的功能。
如果我對問題的描述不清楚,我會更新。
在此先感謝。