angle.io sample plunkrのRC1フォークを使用してAngular(2)に関する質問があります。 ngForテンプレート内のデータバインディング機能は、ngFor以外のイベントで変更検出が真であるかのように動作します。私の例では、ngFor以外のボタンをクリックします。ngの場合でも、コンポーネントのイベントが発生しても再描画できます。
私はtrackBy関数を使用して試してみましたが(私はそれを正しく使用しているかどうかは不明ですが)。これは非常にコストがかかる可能性があるので、すべてのアクションがngForの再描画を引き起こさないようにする方法を理解できません。ログの
結果クリック:
import { Component } from '@angular/core';
@Component({
selector: 'my-app',
template: `
<button (click)="clickOustideFunction()" >hi</button>
<h1 *ngFor="let d of data;trackBy:a">
My First Angular 2 App{{drawingForFunction()}}
</h1>`
})
export class AppComponent {
data= [{"a":1}, {"a":2}];
clickOustideFunction(): void {
console.log("button");
}
drawingForFunction(): void {
console.log("drawing");
}
}
:あなたは問題がコンソールログを見て、この
plunkrに住んで見ることができます
を描く
- ボタン
何かをうまく動かすことができないようだと思っていたので、私が望んでいた答えではありませんでしたが、コンポーネントデコレータで使用できる変更検出戦略を検討します。ありがとうございました! – sasonic