Angular: [(ngModel)]は配列要素にバインドできません(foo [0])

作成日 2016年01月06日  ·  3コメント  ·  ソース: angular/angular

<input type="text" [(ngModel)]="values[0]">は、入力の値の変更時にモデルを更新しません。

プランカー:http: //plnkr.co/edit/HOdOeLTwYzyNke3DTWOl ?p = Preview

最も参考になるコメント

変化する

<input type="text" [(ngModel)]="values[0]"> => {{values}}

<input type="text" [(ngModel)]="values[0]"> => {{values[0]}}

Angular 2は、その補間で配列にバインドせず、配列内の要素のみにバインドするように見えます。 DOMは、バインドされたプロパティが変更された場合にのみ更新されます。 私の推測では、単純な配列{{values}}をテンプレートに入れても、変更の検出はトリガーされません。 何千ものオブジェクトを含む配列を想像してみてください。 これらのオブジェクトのいずれかを変更すると、変更検出がトリガーされ、パフォーマンスが低下する可能性があります。

全てのコメント3件

変化する

<input type="text" [(ngModel)]="values[0]"> => {{values}}

<input type="text" [(ngModel)]="values[0]"> => {{values[0]}}

Angular 2は、その補間で配列にバインドせず、配列内の要素のみにバインドするように見えます。 DOMは、バインドされたプロパティが変更された場合にのみ更新されます。 私の推測では、単純な配列{{values}}をテンプレートに入れても、変更の検出はトリガーされません。 何千ものオブジェクトを含む配列を想像してみてください。 これらのオブジェクトのいずれかを変更すると、変更検出がトリガーされ、パフォーマンスが低下する可能性があります。

Wooooppppps、あなたは完全に正しい@ pe8ter 、ありがとう! 私は(間違った)結論に飛びつきました。 再びThnx。

この問題は、非アクティブのために自動的にロックされています。
同様の問題または関連する問題が発生した場合は、新しい問題を提出してください。

自動会話ロックポリシーの詳細をご覧ください。

_このアクションはボットによって自動的に実行されました。_

このページは役に立ちましたか?
0 / 5 - 0 評価