播放记录

lunr模块添加索引提示 Uncaught TypeError: index.add is not a function

博客Web前端Electron 2019年08月27日 14:28:31

electron应用中添加了lunr搜索库,但在应用中却提示 Uncaught TypeError: index.add is not a function。如下:

image.png

看了半天代码也没找出哪里出了问题,最后在stackoverflow、github上发现了问题所在,原因是lunr从2.x版本开始做了一些修改变动,并且在官网上也确实找到了相应的说明(抓狂ing……)!

Lunr 0.x/1.x和2.x之间的最大差异是Lunr索引现在是不可变的。一旦构建它们,就无法在索引中添加,更新或删除任何文档。必须在定义功能退出之前添加所有文档。

以前将文档添加到索引将如下所示:

var idx = lunr(function () {
  this.ref('id')
  this.field('text')
})

idx.add({ id: 1, text: 'hello' })

在2.x中,文档在配置函数结束之前添加:

var idx = lunr(function () {
  this.ref('id')
  this.field('text')
  
  this.add({ id: 1, text: 'hello' })
})

官方说明:https://lunrjs.com/guides/upgrading.html

转载:https://www.xuecaijie.com/electron/lunr-add-is-not-a-function-206.html

© 2018 www.qingketang.net 鄂ICP备18027844号-1

武汉快勤科技有限公司 13554402156 武汉市东湖新技术开发区关山二路特一号国际企业中心6幢4层7号

微信登录

扫码关注,全站教程免费播放

发表评论 X

登录成功
开通VIP

订单金额:

支付金额:

支付方式: