Как динамически изменять параметр поиска в мгновенном поиске angular algolia

Я использую <ais-configure [searchParameters]="{ aroundLatLng: '0, 0' }"></ais-configure> и динамически обновляю объект { aroundLatLng: '23, 90' } на основе ввода пользователя, но я не вижу никаких изменений в результатах поиска.

Вот пример, который я подготовил вcodeandbox - https://codesandbox.io/s/kxqxr0j45r

В этом примере, как вы можете видеть изначально, я добавил следующий параметр поиска:

searchParameters = { hitsPerPage: 3 };

И есть кнопка с названием «Обновить параметр поиска», и когда вы нажимаете на эту кнопку, она меняет параметр поиска, например -

updateParameter() { this.searchParameters.hitsPerPage = 10; }

Я ожидаю, что любое изменение searchParameters отразится на результатах поиска. И в соответствии с этим я должен видеть 10 результатов на странице. Но это не работает.

Подскажите, пожалуйста, как я могу этого добиться? Спасибо.


person Tahmina Khatoon    schedule 13.08.2018    source источник


Ответы (1)


Думаю, нужно запустить поиск. Вы пробовали пройти это руководство? где сказано:

«После того, как вы установили InstantSearch.js в зависимости вашего приложения, нам нужно создать экземпляр библиотеки InstantSearch.js в службе Angular».

Затем вы можете использовать службу мгновенного поиска в AppComponent:

...
import { InstantSearchService } from './services/instantsearch.service';
...
export class AppComponent {
...
    updateParameter() {
        ...
        this.instantSearchService.search.start(); // trigger the search
    }
}
person Ajay D.    schedule 21.08.2018