1

我有 3 个通过 API 生成的列表。我想使用 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
}
4

1 回答 1

4

您可以合并列表,例如:

var fuse = new Fuse([...a, ...b, ...c] , searchOptions)
于 2019-06-25T10:44:08.990 回答