为什么变异输入数据是错误的方法



我在组件中有一个输入数据

@Input() sogllist: any[] = [];

为什么不推荐像这里这样的突变方法?

public remove(e: any, sogl: any): void {
this.sogllist = this.sogllist.filter((sgl) => sgl.id !== sogl.id);
}

如何正确地做到这一点?

您的输入应该保持不变,以免混淆事物的流动。如果你需要过滤,试着这样做:

@Input() sogllist: any[] = [];
filteredList: any[];
public remove(e: any, sogl: any): void {
this.filteredList= this.sogllist.filter((sgl) => sgl.id !== sogl.id);
}

您还应该给filteredListsogllist的原始值(在setter或ngOnInit中(,然后用filteredList替换您对sogllist的使用

相关内容

最新更新