我有一个问题,当您进行搜索时,从细化列表中选择一个项目并且不删除所选项目搜索其他内容时,所选项目由于其限制而从列表中消失,我如何将其设置为始终显示所选项目细化列表的项目?
问问题
1209 次
2 回答
5
如果不创建自定义小部件,目前这是不可行的。
currentRefinedValues 小部件部分解决了这个问题,因为它列出了所有检查的细化。
我已经在 Instantsearch.js 的 repo 上打开了一个关于这个的问题,我认为这应该比 StackOverflow 更适合这个请求。
于 2016-03-30T21:31:42.397 回答
1
实际上,在内部,已经优化的方面存在于列表中,但它们的相关性不足以在列表中显示。这可以通过调整细化列表的 sortBy 参数来解决。在您使用的示例中,您可以这样修复它:
search.addWidget(
instantsearch.widgets.refinementList({
container: '#materials',
attributeName: 'materials',
operator: 'or',
limit: 10,
sortBy: ['isRefined', 'count:desc', 'name:asc'],
templates: {
item: facetTemplateCheckbox,
header: '<div class="facet-title">Materials</div class="facet-title">'
}
})
);
请注意使用“isRefined”作为 sortBy 的第一个谓词。这样可以确保用户始终可以看到已经提炼的值。
这是新行为的 GIF:
于 2016-06-09T09:59:51.990 回答