ngForOf中的重复ID生成-Angular

问题描述

我正在使用ngForOf列出日期,每个日期都由id属性表示,该属性实际上是其索引+1。所有日期都以对象的形式存在于数组中。而且,每个日期都是一个组件实例。

ngForOf的作用是,每当我从列表中删除日期时,整个DOM都会刷新,并且ID会重新分配。

<app-date *ngFor="let date of dates | callback: filterDates; index as i" (delete)="del(i)"></app-date>

问题

现在,当我说“删除”时,我不是要从数组中拼接/删除日期,而是将日期的action属性设置为"deleted"。这样一来,我不必在每个日期都发出HTTP请求来将其从数据库中删除。

一旦action"deleted",日期就不会显示在DOM中,但仍会出现在数组中。因此,下次DOM刷新时,它将重新分配ID,现在我将在阵列中具有重复的ID。这会带来很多后果,最大的后果是我无法删除具有相同ID的日期。

我还试图在每个删除事件上更改日期的ID,但这也会弄乱数组。

重要

我知道trackBy,但是我不知道如何应用它来解决此问题,也没有在互联网上看到与此相关的问题。

谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)