0
これは、無限ループが発生します -なぜ入力がない場合、ngModelが新しいオブジェクトを渡すときに無限ループを引き起こすのですか?
<child [ngModel]="foo()" ngDefaultControl></child>
...
foo() {return new Object();}
...
//child implements ControlValueAccessor
(plunkerあなたがこれを実行すると、ページ全体がフリーズします)、これはしません:(plunker)
<child [anythingElse]="foo()" ngDefaultControl></child>
...
foo() {return new Object();}
...
@Input() anythingElse; //on child
なぜこれが起こるのでしょうか?これはバグですか?
'[ngModel]'の代わりに '[(ngModel)]'を使うとどうなりますか? – trichetriche
@trichetriche '((ngModel)]は双方向データバインディング用です。 'Input'と' ngModel'シナリオの両方で、ここで[property binding]を使っています。式に代入することはできないので、 '[(ngModel)]'はここで壊れてしまいます。 – uber5001
これは私が尋ねる理由です。双方向バインディングは無限ループになりますか? – trichetriche