在Angular中,*ngFor是否需要使用trackBy函数?在这里(链接)、(链接)、(链接)和(链接)等一些文章中提到,使用trackBy会提高性能并具有更好的内存管理。但我想知道,如果trackBy会带来这样的改进,那么为什么它不是默认行为呢?它是默认行为吗?我看到的东西都过时了吗?
如果它不是默认行为,我的项目中有大约90个组件,每个组件中都有一个*ngFor,请问有没有一种方法可以在不包含以下函数的情况下使用trackBy 90次?我还想避免添加服务并导入90次。
如果它不是默认行为,我的项目中有大约90个组件,每个组件中都有一个*ngFor,请问有没有一种方法可以在不包含以下函数的情况下使用trackBy 90次?我还想避免添加服务并导入90次。
<mat-option *ngFor="let l of list; trackBy: trackByFn" [value]="l.id">
{{l.name}}
</mat-option>
TS
trackByFn(index, item) {
return index
}
return item.id
。由于它是唯一标识符,那么我应该会看到一些内存/性能上的提升吗?如果确实如此,有没有更简洁的方法在每个组件中使用trackBy而不创建一个函数? - rhavelka