angular * ngFor指令不再需要trackBy吗?

时间:2019-06-18 21:30:22

标签: angular

app.component.html文件:

<button (click)="update()">Add More</button>
<ul>
  <li *ngFor="let person of persons; trackBy: trackFn">
    {{ "Name:- " + person.name + " || Age:- " + person.age }}
  </li>
</ul>

app.component.ts文件:

export class AppComponent {
  persons = [
    {
      name: "Huzaifa",
      age: 16
    },
    {
      name: "John",
      age: 28
    },
    {
      name: "Kerma",
      age: 22
    }
  ];

  update() {
    this.persons.push({
      name: "umair",
      age: 20
    });
  }
}

当我学习angular 7时,我注意到我必须在更新数据时使用trackBy来跟踪项目。否则,angular将更新应用了ngForOf指令的整个DOM。 chrome的开发者工具

但是

现在,即使不使用trackBy函数,我也不会遇到这个问题!

您注意到了吗?

帮帮我

也请不要报告我如果在问问题时做错了什么...只要告诉我我的错误,我会尽力改善这一点。

1 个答案:

答案 0 :(得分:0)

我用角度7尝试了来自HTTP请求的数据,而没有用trackBy角度来更新整个事情