Как установить свойства первоначального поиска с помощью Vue InstantSearch?

Я использую компоненты Vue, предоставленные Algolia, для поиска в моем индексе.

https://v2--vue-instantsearch.netlify.com/getting-started/getting-started.html

Поиск работает нормально, но мне интересно, как я могу установить начальные значения, скажем, список уточнений, который у меня есть при загрузке страницы.

Я настроил поиск так:

<script>
import algoliasearch from 'algoliasearch/lite'

export default {
  name: 'Home',
  data () {
    return {
      searchClient: algoliasearch(
        'APPID',
        'API-KEY'
      )
    }
  }
}
</script>

... и у меня есть такой список уточнений (много кода вырезано для краткости):

<ais-instant-search
  :search-client = "searchClient"
  index-name = "properties"
>
  <ais-refinement-list
    attribute = "borough"
    :sortBy = "['name:asc']"
  />
</ais-instant-search>

Как только я попадаю на страницу, все флажки для уточняющего списка становятся пустыми ... Я хотел бы знать, как я могу установить некоторые начальные значения / комбинации для запроса по своему вкусу.

Возможно ли вообще использование этих компонентов? Я просмотрел документы довольно подробно, но не уверен, что увижу что-нибудь подробное. Возможно, я ищу не те термины.

Помощь приветствуется. Спасибо.

Глядя на это, это кажется невозможным без разветвления компонента.

Husam Ibrahim 29.11.2018 01:34
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
1
579
1

Ответы 1

У вас есть 2 способа получить его:

  1. Установите значение по умолчанию в ais-searcher routing, как:
...

routeToState: (routeState) => {
  if (!routeState.foo) {
    routeState.foo = this.bar
  }
  ...
  1. Используйте ref в ваших компонентах очистки и выполните его методы:
// in template
<ais-refinement-list
  attribute = "foo"
  ref = "fooRefinement" />

// In Script

...
mounted() {
  this.$refs.fooRefinement.refine('bar')
}

В последнем случае вы должны использовать обещания или setInterval для метода wait the.

Другие вопросы по теме