首页 > 解决方案 > 在函数调用它之后执行 ngFor?

问题描述

我有很多数据要处理,所以当使用 ngFor 时,渲染它需要一些时间。在正常的 Jquery 方式中,我使用了一个循环,当单击更多按钮时,它将呈现下一个 10 并使用 .append()。由于我使用的是 Angular,我不想要 jQuery 方式。如果有的话,建议我另一种方式。

标签: jqueryangulartypescriptngfor

解决方案


按照说明使用trackBy ( https://netbasal.com/angular-2-improve-performance-with-trackby-cc147b5104e5 )

我们可以通过提供 trackBy 函数帮助 Angular 跟踪添加或删除的项目。trackBy 函数将索引和当前项作为参数,并需要返回该项的唯一标识符。现在,当您更改集合时,Angular 可以根据唯一标识符跟踪已添加或删除的项目,并仅创建或销毁已更改的内容。

<img *ngFor="let picture of pictures; trackBy: trackImageId" [src]="picture.path">

trackImageId(index: number, picture: PictureModel) {
        return picture.id;
}

推荐阅读