changeDetectionストラテジが "ChangeDetectionStrategy.Default"に設定されている場合、Angular2での変更検出はどのように機能しますか? テンプレート内のすべてのバインディング(参照のみ)をチェックし、参照が変更された場合はトリガーの再レンダリングを行いますか?Angular2デフォルトの変更検出
0
A
答えて
0
default change detection strategy
は、すべてのバインディングの変更検出を実行します。参照の変更だけでなく、モデルのプロパティの変更も検索されます。 changeName()
メソッドが実行された後に、次のコードを実行しているたとえば
だけでもname
プロパティの変更ではなく、person
参照が、テンプレートに名前を変更します。
import {Component} from '@angular/core';
@Component({
selector: 'my-app',
template: `
<h1>Hello {{person.name}}</h1>
<button (click)="changeName()">Change name!</button>
`
})
export class AppComponent {
person = { name: 'Foo' };
changeName() {
this.person.name = 'Bar';
}
}
+0
それはまだへの参照をチェックしていますテンプレートにバインドされているプロパティ上記の例のように、 "person.name"がテンプレートにバインドされています。 –
関連する問題
- 1. Angular2デフォルトの変更検出方法を変更する
- 2. ライフサイクルフックメソッドのAngular2変更検出
- 3. angular2 @入力変更検出
- 4. Angular2 ngFor ArrayMutationsのOnPush変更検出
- 5. Angular2テスト - 変更を検出しない
- 6. Angular2の観測可能な変更検出テンプレートの更新
- 7. 指令の変更検出のためのAngular2イベント
- 8. サードパーティライブラリのangular2変更の検出を無効にする方法
- 9. Angular2ルータの変更を検出する前に経路を変更する
- 10. FirefoxのAngular2変化検出無限ループ
- 11. Angular2 OnPush変化検出とngFor
- 12. ANGULAR2:クラスの静的変数の変化を検出する
- 13. DOM変更イベントの検出
- 14. 変更の検出jQuery
- 15. デフォルト位置検出
- 16. %変更を検出する
- 17. Angular2 - クリック検出しないと変化検出が表示されない
- 18. クリック後にAngular2火災の変化を検出しない
- 19. 変更デフォルトの色
- 20. ウォッチャーは変化を検出し、変更
- 21. TabViewのデフォルトの色と検索バーのデフォルトの色を変更する
- 22. 変更デフォルト
- 23. Angular2:formbuilderの値の変更
- 24. Microsoft Syncフレームワークの変更検出のみ
- 25. Android:アクティビティの検出/アプリケーションの変更イベント
- 26. アレイ内のオブジェクトの変更検出
- 27. ダイアログボックスのコントロール - 変更の検出
- 28. Angular2 RC5 ExceptionHandlerの変更?
- 29. Angular2 HostListenerチェックURLの変更
- 30. 。変更が入力の変更の値を検出しない
は、この記事を見てください:https://blog.thoughtram.io/angular/2016/02/22/angular-2-change-detection-explained.html – Maxime