【发布时间】:2018-07-30 15:01:59
【问题描述】:
我有用于网格搜索的过滤管道逻辑
results.filter(item => Object.keys(item)
.some(key => searchTerm.split(',').some(arg =>item[key]? item[key].toString().toLowerCase().includes(arg.toString().toLowerCase()):""))
);
上面的代码会在数组列表的所有列中搜索一个关键字,它绑定了网格,但是我不需要搜索数组列表中的所有列。
我只需要搜索网格中显示的列。
所以,逻辑如下:
results
.filter(item => (item.ProxyName.toLowerCase().includes(searchTerm.toLowerCase()) ||
item.ProxyType.toLowerCase().includes(searchTerm.toLowerCase())||
item.SA_SPOC_DL.toLowerCase().includes(searchTerm.toLowerCase())||
item.AssignmentGroup.toLowerCase().includes(searchTerm.toLowerCase()))
);
.filter(item => Object.keys(item)
.some(key => searchTerm.split(',').some(arg =>item[key]? item[key].toString().toLowerCase().includes(arg.toString().toLowerCase()):""))
);
为此,我决定传递一个逗号分隔的列数组来过滤
string searchcolumns = ["ProxyName,ProxyType,SA_SPOC_DL"]
如果我传递逗号分隔的列数组,我如何重写逻辑?
【问题讨论】:
标签: arrays angular linq typescript logic