作为响应,如何使用条件创建自定义搜索功能?

时间:2018-09-04 21:29:42

标签: javascript reactjs

我的项目状态为包含以下数据的数组类型。

projects array

使用此数据,我需要根据与company_nameproject_nameproject_descriptionrelease_name和{{1}匹配的搜索输入来过滤用户结果}

release's description

目前,我只能根据与项目名称匹配的关键字过滤结果。

为什么我也可以使用其他属性或添加条件以基于其他属性过滤数据?

1 个答案:

答案 0 :(得分:2)

如果您想查看这些字段中是否存在术语,可以使用Array#some()

const filterFields = ['company_name', 'project_name', 'project_description', 'release_name', 'descrip'];

const { projects, searchfield) = this.state;

const term = searchfield.toLowerCase(); 

const filterProjects = projects.filter(data => {  
  return filterFields.some(field => data[field].toLowerCase().includes(term))
});