我有一个需要搜索组件的 Gatsy-Sanity 项目。为此,我想使用gatsby-plugin-lunr。我遇到了一个问题,我的节点是多语言的。例如,我的一个字段的构造如下:
"title": {
"_type": "localeString",
"nl": "Begin ",
"en": "Home "
},
(简而言之,此解析器如下所示。如果键_type
以 'locale*' 开头,则仅返回键 en 或 nl 的值。这是由 var 传递的)
我可以制作一个拆分/剥离数据的解析器。我在从搜索索引运行搜索查询的组件内部进行了这种工作(尚未成功)。但这意味着它会在每次搜索时解析它。有没有办法在gatsby-node.js
使用 lunr 插件构建时做到这一点?我也需要这个,因为我需要在结果的 slug/path 上添加一个语言前缀。
const SearchProcess = lunr => builder => {
// how to pre-process data
}