草庐IT

javascript - 分配后无法将文档添加到 lunr 索引(TypeError : idx. add is not a function)

我正在尝试创建一个lunr索引并能够在分配后向其中添加文档。这是我正在尝试做的稍微简化的版本:vardocuments=[{'id':'1','content':'hello'},{'id':'2','content':'world'},{'id':'3','content':'!'}];varidx=lunr(function(){this.ref('id');this.field('content');});for(vari=0;i这给我以下错误:TypeError:idx.add不是一个函数。我见过多个tutorials说这是你应该能够做到的。如果我在分配idx时添加文档,它只对

javascript - lunr.js 添加关于索引记录的数据

在lunr.js,您可以使用.ref()方法添加唯一引用,但我找不到任何方法来添加有关该特定记录的额外数据/信息。这是不可能的还是我错过了一些非常明显的东西。我什至尝试将对象分配给ref,但它会将其保存为字符串。编辑现在我将所有内容保存为.ref()中的JSON字符串,它可以工作但使用起来真的很难看。 最佳答案 lunr根本不存储您传递给索引的文档,它索引的方式意味着原始文档对lunr根本不可用,因此无法传递和存储与索引关联的元数据对象。更好的解决办法是把你的记录保存在lunr之外,当你得到搜索结果时,使用你给lunr的引用拉出记录