【发布时间】:2019-06-26 13:04:48
【问题描述】:
好的,让我解释一下我的问题是什么:
这是我的组件类:
export class DataArray implements OnInit {
private data: string[] = [];
addData(msg: string) {
this.data.push(msg);
}
deleteMsg(index: number) {
console.log(" that is my element which i when to remove data[index]=" + this.data[index]);
this.data.splice(index, 1);
}
}
这只是两种方法:一种是在我的字符串数组中添加新元素 还有一个从我的数组中删除元素。
和我的 HTML 组件
<div class="row" *ngFor="let element of data;let i = index">
{{element}}
<button class="btn btn-md btn-success" (click)="addData(element)">ADD ELEMENT
</button>
<button class="btn btn-md btn-danger" (click)="deleteMsg(i)">Remove ELEMENT
</button>
</div>
函数 addData 工作正常,函数 deleteMsg 也可以,但是 当我尝试删除一个新添加的元素时,困境就来了,我无法删除它,它保留在数组数据中。
如果有人可以提出解决方案,那对我来说非常有用。
【问题讨论】:
-
那是您使用的确切代码吗?
-
您确定它与拼接有关,而不是与更新渲染的代码有关吗?
标签: javascript arrays angular ngfor array-splice