1

在我的应用程序中,我使用了出色的ReactiveSearch

有一些常量需要在每个查询中进行过滤。例如,传递一个总是被过滤的 id 列表,然后在顶部应用用户的过滤。

这里有一个类似的问题,但这更侧重于删除字段。

如何传递一组 ID 以针对 ElasticSearch 中的特定字段进行过滤?我很乐意使用任何一种 hacky 方法,例如制作一个自定义组件来容纳 ID,然后用 CSS 隐藏它,但如果有更简洁的方法,请告诉我。

4

1 回答 1

1

解决此问题的方法之一是defaultQuery在结果组件中使用 prop。例如,ReactiveList支持这个道具(docs)。您可以使用它来运行您选择的任何查询,这些查询将与其他查询一起应用。例如:

<ReactiveList
  ...
  defaultQuery={() => ({
    bool: {
      must_not: {
        term: {
          "original_title.raw": "The Last Guardian"
        }
      }
    }
  })}
/>

这将过滤掉所有original_title.raw匹配的字段The Last Guardian。见演示

于 2018-08-13T09:04:46.493 回答