Javascript 尝试筛选一行为数组的表

Javascript 尝试筛选一行为数组的表,javascript,reactjs,react-table,Javascript,Reactjs,React Table,我正在使用react table为筛选表构建一个搜索框。该表有几个属性,其中一个是数组 Searchbox对每一行(名称、id、标签)都非常有效,但当我试图搜索来自数组(颜色)的一个属性时,它会崩溃 下面是我的搜索功能。我从输入字段中获取值 function search(rows: any[]) { return rows.filter( (row) => row.name.toLowerCase().indexOf(value) > -1 ||

我正在使用react table为筛选表构建一个搜索框。该表有几个属性,其中一个是数组

Searchbox对每一行(名称、id、标签)都非常有效,但当我试图搜索来自数组(颜色)的一个属性时,它会崩溃

下面是我的搜索功能。我从输入字段中获取值

function search(rows: any[]) {
    return rows.filter(
      (row) => 
      row.name.toLowerCase().indexOf(value) > -1 ||
      row.id.toLowerCase().indexOf(value) > -1 ||
      row.label.toLowerCase().indexOf(value) > -1 ||
      **row.colors.toLowerCase().indexOf(value) > -1** <- that doesn't work
      )
  };
函数搜索(行:任意[]){
返回行。过滤器(
(世界其他地区)=>
row.name.toLowerCase().indexOf(值)>-1||
row.id.toLowerCase().indexOf(值)>-1||
row.label.toLowerCase().indexOf(值)>-1||

**row.colors.toLowerCase().indexOf(value)>-1**给定的
colors
是您必须迭代并验证给定条件是否通过的数组:

function search(rows: any[]) {
    return rows.filter(
      (row) => 
      row.name.toLowerCase().indexOf(value) > -1 ||
      row.id.toLowerCase().indexOf(value) > -1 ||
      row.label.toLowerCase().indexOf(value) > -1 ||
      row.colors.some(color => color.toLowerCase().indexOf(value) > -1)
      )
  };

参考资料:

非常感谢!