我有一个索引,在该索引中,我试图以algolia格式传递查询的初始值。我正在使用instantsearch.js,现在它只加载索引中的所有内容。如何在页面加载时将初始值传递给索引?
例如,Select * from index where Category='Careers' (将职业生涯作为负载中的一个值)
我已经在文档里找过这个了,我想不出来了。
此外,我还需要传递多个值,因此类似于:
select * from index where Category = 'Careers' or 'Skills' or 'Interests' (有或有语句)
谢谢!
发布于 2016-02-16 18:15:48
我假设您使用的是一个refinementList小部件:https://community.algolia.com/instantsearch.js/documentation/#refinementlist。在数据的“类别”属性上。
如果是这样,您可以这样做:
var preselectedCategories = ['Careers', 'Skills'];
var search = instantsearch(applicationID, apiKey, {
...other parameters,
searchParameters: {
disjunctiveFacetsRefinements: {
category: preselectedCategories
}
}
})您还需要在refinementList实例化中这样做:
var refinementList = instantsearch.widgets.refinementList({
transformData: {
item: function(item) {
if (preselectedCategories.indexOf(item.name) !== -1) {
item.cssClasses.label += ' pre-selected';
}
return item;
}
}
});在默认情况下,所有预选的类别项都将具有“预选”的css类。
然后您可以使用css和这个类名来执行以下操作:
.pre-selected {
display: none;
}让我知道
https://stackoverflow.com/questions/35437004
复制相似问题