文档
组件
结果
代码片段

代码片段

代码片段是一个显示命中结果中突出显示的属性的小部件。它通常用于显示属性的片段,其中搜索查询已匹配。

高亮显示和代码片段之间的区别

高亮显示和代码片段非常相似。主要区别在于,高亮显示返回整个字段值,突出显示匹配项,而代码片段返回字段值的一部分,突出显示匹配项。

对于标题之类的短值字段,高亮显示很有用。

对于描述之类的长值字段,代码片段很有用。

设置

以下文档在 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>
  )
}
 

文档

故障排除

  1. 确保您在 search_settings 配置中具有 highlight_attributes
  2. 确保属性也在 search_attributes 中指定,并且与相同的字段匹配。

Apache 2.0 2024 © Joseph McElroy.
需要帮助?加入 Discord