Algolia即时搜索无法添加数字过滤器/无效

时间:2018-02-27 17:06:51

标签: algolia instantsearch.js

我尝试在我的Instantsearch应用程序中使用一个永远在线的过滤器(在用户搜索之前和之后)&从文档中尝试了两种方式:

第一

var search = instantsearch({
    appId: '------------------,
    apiKey: '-----------------',
    indexName: 'words',
    urlSync: true,
    filters: 'sendDateUnix<'+ Date.now(),
});

第二

var search = instantsearch({
    appId: '------------------,
    apiKey: '-----------------',
    indexName: 'words',
    urlSync: true,
    numericFilters: [
        'sendDateUnix<'+ Date.now()
    ]
});

正如您所看到的,我有一个属性是Unix时间戳,并且只想获得此时间戳大于现在的结果。当我在algolia界面中设置此参数时,它完美地工作。当我编写完全过滤器时它也不起作用:&#39; sendDateUnix&lt; 1519751110&#39;

IS版本:

<script src="https://cdn.jsdelivr.net/instantsearch.js/1/instantsearch.min.js"></script>

1 个答案:

答案 0 :(得分:6)

numericFilters上的instantsearch选项不存在。您需要在searchParameters属性中包含其他参数。有关更多信息,请参阅the documentation

const search = instantsearch({
  appId: '------------------,
  apiKey: '-----------------',
  indexName: 'words',
  urlSync: true,
  searchParameters: {
    numericFilters: ['sendDateUnix < ' + Date.now()],
  },
});