私はこれを過度に考えている可能性があります。 :)
注:次の例では、オブジェクト "ctrl"はコンポーネントのコントローラエイリアスです。 var ctrl = this;時にはそれはないですが、時々、会社が利用可能である
bindings: {
params: '<',
company: '<?'
}
:
のは、我々は1がオプションである2つのバインディングを持つコンポーネントがあるとしましょう。
ctrl.$onChanges = function(changes) {
if (changes.params || changes.company) {
console.log('executed');
}
}
両方のバインディングが更新された場合、$ onChangesが二回実行されるようだ:
$ onChangesは次のように見えます。初めて、値でそのバインディングを更新したにもかかわらず、コンポーネントのctrl.company(バインディング)はnullです。もう一度、ctrl.companyには価値があります。
ここで、OR演算が正しくない可能性があることを理解しています。私はちょっと$ onChangesがどのように機能するか少し不安です。
問題の説明が不明な場合は、更新します。
ありがとうございます。