2016-09-10 2 views

답변

5

데이터를 검색 할 때 객체의 실제 참조를 변경 했으므로 ngFor은 모든 DOM 노드를 다시 그리기 때문에 재 렌더링이 발생합니다. 이 경우 여기 trackBy을 사용하면 *ngFor을 더 똑똑하게 만들 수 있습니다.

trackBy이 고유 ID 열을 기반으로해야합니다, 귀하의 경우에 나는 이것이 내가 본 최고의 솔루션입니다 message.id

<message *ngFor="let message of messages | async;trackBy:trackByFn" [message]="message"></message> 

코드

trackByFn(message: any){ 
    return message != null ? message.id: null; 
} 
+0

것을 듣고 @okhobb 다행 @에서

, 건배 및 감사 :) –

+0

그것은'trackBy 있어야하지 않나요? –

+0

@ GünterZöchbauer 머리를 주셔서 감사합니다, 그게 나보고 싶었어 :) –