首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >阿尔戈利亚初始搜索参数instantsearch.js

阿尔戈利亚初始搜索参数instantsearch.js
EN

Stack Overflow用户
提问于 2016-02-16 15:50:21
回答 1查看 1.8K关注 0票数 5

我有一个索引,在该索引中,我试图以algolia格式传递查询的初始值。我正在使用instantsearch.js,现在它只加载索引中的所有内容。如何在页面加载时将初始值传递给索引?

例如,Select * from index where Category='Careers' (将职业生涯作为负载中的一个值)

我已经在文档里找过这个了,我想不出来了。

此外,我还需要传递多个值,因此类似于:

select * from index where Category = 'Careers' or 'Skills' or 'Interests' (有或有语句)

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-16 18:15:48

我假设您使用的是一个refinementList小部件:https://community.algolia.com/instantsearch.js/documentation/#refinementlist。在数据的“类别”属性上。

如果是这样,您可以这样做:

代码语言:javascript
复制
var preselectedCategories = ['Careers', 'Skills'];

var search = instantsearch(applicationID, apiKey, {
  ...other parameters,
  searchParameters: {
    disjunctiveFacetsRefinements: {
      category: preselectedCategories
    }
  }
})

您还需要在refinementList实例化中这样做:

代码语言:javascript
复制
var refinementList = instantsearch.widgets.refinementList({
  transformData: {
    item: function(item) {
      if (preselectedCategories.indexOf(item.name) !== -1) {
        item.cssClasses.label += ' pre-selected';
      }

      return item;
    }
  }
});

在默认情况下,所有预选的类别项都将具有“预选”的css类。

然后您可以使用css和这个类名来执行以下操作:

代码语言:javascript
复制
.pre-selected {
  display: none;
}

让我知道

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35437004

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档