如何在角算法即时搜索中动态更改搜索参数

时间:2018-08-13 07:18:08

标签: angular algolia instantsearch

我正在使用<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个结果。但这不起作用。

请您告诉我我该如何实现?谢谢。

1 个答案:

答案 0 :(得分:0)

我认为您需要触发搜索。您是否尝试完成this tutorial的内容?

“在将InstantSearch.js安装到应用程序的依赖项后,我们需要将InstantSearch.js库实例化为Angular服务。”

然后,您可以在AppComponent中利用即时搜索服务:

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