我有过滤器函数,需要根据接收列名称过滤数组数据,我的问题是如何将接收列名称放入过滤器中?静态代码(示例)this.listOfData = this.listOfData.filter((item: DataItem) => item.name.indexOf(filterFormData.formInput) !== -1);item.name名称是我的数组数据的列,因此它只会搜索names我的代码search(column): void { this.listOfData = this.listOfData.filter((item: DataItem) => item.column.indexOf(filterFormData.formInput) !== -1 );}column是我从搜索表单中获得的名称,它可以是列name、列id或列status等。问题是我想使用动态列名而不是硬编码item.name即item.status//item.iditem.name任何想法?
1 回答
长风秋雁
TA贡献1757条经验 获得超7个赞
您可以通过以下方式通过变量访问对象的属性:
item[column]
其中列是项目的键,所以这应该有效:
search(column): void {
this.listOfData = this.listOfData.filter((item: DataItem) =>
item[column]indexOf(filterFormData.formInput) !== -1
);
}
添加回答
举报
0/150
提交
取消