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. javascriptソースコード変更の検出
- 13. 変更の検出jQuery
- 14. DOM変更イベントの検出
- 15. ANGULAR2:クラスの静的変数の変化を検出する
- 16. デフォルト位置検出
- 17. デフォルトのエラーページ:angular2
- 18. 変数変更のライブ検出
- 19. %変更を検出する
- 20. SAPUI5変更検出メカニズム
- 21. Angular2 - クリック検出しないと変化検出が表示されない
- 22. 角度検出での変更検出の使用方法
- 23. Laravel:デフォルトのログインエラーメッセージを変更する方法:私のようなデフォルトのログイン検証エラーメッセージ変更したい
- 24. 変更デフォルトの色
- 25. TabViewのデフォルトの色と検索バーのデフォルトの色を変更する
- 26. 変更デフォルト
- 27. ウォッチャーは変化を検出し、変更
- 28. クリック後にAngular2火災の変化を検出しない
- 29. angular2はng-contentの変化を検出します
- 30. canActivate PromiseブロックまたはObservableブロックの検出変更検出
は、この記事を見てください:https://blog.thoughtram.io/angular/2016/02/22/angular-2-change-detection-explained.html – Maxime