查询多个索引时,如何为 algolia 中的每个索引使用不同的搜索参数? (Vue 即时搜索)
When querying multiple indices, how do I use different search parameters for each respective index in algolia? (Vue Instantsearch)
我正在使用具有多个索引的 Vue Instantsearch。
查询在 ais-search-box
组件中进行,同时查看两个索引并在 ais-autocomplete
组件中显示结果。
这很好用,但是我找不到为每个索引分配相应的 ais-configure
组件的方法,因此必须对两个索引使用 same 过滤器.
正如您想象的那样,两个索引包含不同的属性,这不会按预期工作。
文档提到了这一点:
Since these are two dedicated indices, you can apply different parameters and widgets to the search. You can do it by passing different parameters to ais-configure
, or mounting different widgets in each of the ais-index
components. (source: https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/multi-index-search/vue/)
似乎不清楚如何“将不同的参数传递给 ais-configure
”?
谁能举个例子吗?
在同一页面的下方有一个 github 带有示例的存储库。这是对相关代码的深入 link:
您可以将 ais-config
嵌套在 ais-index
组件下进行第二次搜索。类似于:
<ais-instant-search
:search-client="searchClient"
index-name="instant_search_price_desc"
>
<ais-search-box v-model="query" />
<ais-configure
:restrictSearchableAttributes="['name']"
:hitsPerPage="8"
/>
<ais-hits>
<template slot="item" slot-scope="{ item }">
<h3><ais-highlight :hit="item" attribute="name" /></h3>
<img :src="item.image" />
</template>
</ais-hits>
<hr />
<ais-index :search-client="searchClient" index-name="instant_search">
<ais-configure
:restrictSearchableAttributes="['name']"
:hitsPerPage="2"
/>
<ais-hits>
...
我正在使用具有多个索引的 Vue Instantsearch。
查询在 ais-search-box
组件中进行,同时查看两个索引并在 ais-autocomplete
组件中显示结果。
这很好用,但是我找不到为每个索引分配相应的 ais-configure
组件的方法,因此必须对两个索引使用 same 过滤器.
正如您想象的那样,两个索引包含不同的属性,这不会按预期工作。
文档提到了这一点:
Since these are two dedicated indices, you can apply different parameters and widgets to the search. You can do it by passing different parameters to
ais-configure
, or mounting different widgets in each of theais-index
components. (source: https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/multi-index-search/vue/)
似乎不清楚如何“将不同的参数传递给 ais-configure
”?
谁能举个例子吗?
在同一页面的下方有一个 github 带有示例的存储库。这是对相关代码的深入 link:
您可以将 ais-config
嵌套在 ais-index
组件下进行第二次搜索。类似于:
<ais-instant-search
:search-client="searchClient"
index-name="instant_search_price_desc"
>
<ais-search-box v-model="query" />
<ais-configure
:restrictSearchableAttributes="['name']"
:hitsPerPage="8"
/>
<ais-hits>
<template slot="item" slot-scope="{ item }">
<h3><ais-highlight :hit="item" attribute="name" /></h3>
<img :src="item.image" />
</template>
</ais-hits>
<hr />
<ais-index :search-client="searchClient" index-name="instant_search">
<ais-configure
:restrictSearchableAttributes="['name']"
:hitsPerPage="2"
/>
<ais-hits>
...