代码片段
代码片段是一个显示命中结果中突出显示的属性的小部件。它通常用于显示属性的片段,其中搜索查询已匹配。
高亮显示和代码片段之间的区别
高亮显示和代码片段非常相似。主要区别在于,高亮显示返回整个字段值,突出显示匹配项,而代码片段返回字段值的一部分,突出显示匹配项。
对于标题之类的短值字段,高亮显示很有用。
对于描述之类的长值字段,代码片段很有用。
设置
以下文档在 Elasticsearch 中建立索引
{
"brand": "Apple",
"product": "Macbook Pro 14",
"in_stock": true,
"shipping": 10
}
Searchkit 设置
在 highlight_attributes
中的 search_settings
{
search_settings: {
snippet_attributes: ['description']
}
}
更改代码片段长度
代码片段的默认长度为 100 个字符。您可以像这样更改它
{
search_settings: {
snippet_attributes: ['description:200'] // snippet length will be 200 characters
}
}
用法
以下是一个 hitView
示例,它显示带有搜索查询突出显示的 product
属性。
const hitView = ({ hit }) => {
return (
<div>
<h2><Snippet hit={hit} attribute="description" /></h2>
</div>
)
}
文档
- JS 小部件 (在新标签页中打开)
- React InstantSearch (在新标签页中打开)
- Vue InstantSearch (在新标签页中打开)
- Angular InstantSearch (在新标签页中打开)
故障排除
- 确保您在
search_settings
配置中具有highlight_attributes
。 - 确保属性也在
search_attributes
中指定,并且与相同的字段匹配。