同时使用Fuse js过滤多个列表

Filter multiple lists using Fuse js at the same time

我通过 API 生成了 3 个列表。我想使用 Fuse js 同时过滤这些列表。我查了文档,没找到筛选多个列表的解决方法。

我不知道如何将 3 个不同的列表作为参数传递给 Fuse 方法。

this.state = {
  a: [],
  b: [],
  c: [],
}

filterVal = (e) =>{
  let searchOptions = {
    keys:['name'], //name is common key across all 3 lists
    includeMatches: true
  }

  var fuse = new Fuse(a,b,c, searchOptions); //not sure how pass 3 lists here
  var filteredResult = fuse.search(e.target.value); //passed the user input value
}

您可以像这样合并列表:

var fuse = new Fuse([...a, ...b, ...c] , searchOptions)