我真的不明白我应该从 trackBy
返回什么。基于我在 web 上看到的一些例子,我应该返回对象上某些属性的值。对吗?为什么我应该得到 index
作为一个参数?
例如,在下列情况下:
组件
constructor() {
window.setInterval(() => this.users = [
{ name: 'user1', score: Math.random() },
{ name: 'user2', score: Math.random() }
],
1000);
}
userByName(index, user) {
return user.name;
}
组件
<div *ngFor="let user of users; trackBy:userByName">
{{user.name}} -> {{user.score}}
</div>
此模板中显示的对象仍在更新,尽管名称没有改变。为什么?