Виджет ais-доработки списка для заголовков фасетов, а не контента фасетов
Окно поиска работает нормально. Я сейчас пытаюсь добавить флажки, чтобы пользователь мог фильтровать результаты. Для этого я пытаюсь использовать https://www.algolia.com/doc/api-reference/widgets/refinement-list/vue/
Я назначил атрибуты для огранки внутри панели управления algolia. Код ниже работает. Проблема в том, что я хочу, чтобы значение для флажков было фасетом, а не данными внутри фасета. Например:
Текущий путь (ближе всего я получил к тому, что хочу) - attribute="business_name"
Выход =
<input type="checkbox" class="ais-RefinementList-checkbox" value="Business Name 1">
<input type="checkbox" class="ais-RefinementList-checkbox" value="Business Name 2">
(Таким образом, в настоящее время все флажки являются названиями компаний)
...
Желаемый путь - attribute="attributesForFaceting"
Выход =
<input type="checkbox" class="ais-RefinementList-checkbox" value="Business Name">
<input type="checkbox" class="ais-RefinementList-checkbox" value="Business Address">
<input type="checkbox" class="ais-RefinementList-checkbox" value="Business Telephone Number">
Это означает, что я могу начать вводить номер, и если у меня установлен флажок для служебного адреса, но не для служебного телефонного номера, я получу только те результаты, которые соответствуют адресу.
MySearch.vue
<template>
<ais-instant-search
:search-client="searchClient"
index-name="Businesses"
>
<ais-search-box placeholder="Search by business..."></ais-search-box>
<ais-refinement-list
attribute="business_name"
label="Business Name"
/>
<ais-hits>
<div slot="item" slot-scope="{ item }">
<h2>{{ item.business_name }}</h2>
</div>
</ais-hits>
</ais-instant-search>
</template>
<script>
import algoliasearch from 'algoliasearch/lite';
export default {
data() {
return {
searchClient: algoliasearch(
'value',
'value'
),
}
}
};
</script>