【问题标题】:Lunr.js indexing?Lunr.js 索引?
【发布时间】:2016-07-23 05:37:39
【问题描述】:

我最近开始了一个网络项目,我必须在我的网站上实现一个搜索按钮,但在客户端。所以我找到了lunr.js。我的问题是..我如何索引页面?是的,我确实知道他们网站上写的演习.. 但是,还不够清楚.. 我在哪里实现该脚本? (见下文)我用什么?

var index = lunr(function () {
  this.field('title', {boost: 10})
  this.field('body')
  this.ref('id')
})

index.add({
  id: 1,
  title: 'Foo',
  body: 'Foo foo foo!'
})

index.add({
  id: 2,
  title: 'Bar',
  body: 'Bar bar bar!'
})

我把这段代码放在哪里?我显然不知道。

【问题讨论】:

  • 删除不需要的文字

标签: javascript web indexing lunrjs


【解决方案1】:

欢迎来到 Stack Overflow!

您拥有的 sn-p 创建一个索引,并将文档添加到该索引。索引是您执行搜索的对象,它以使全文搜索成为可能的方式存储您添加的文档。

您应该将该代码(但添加您要搜索的文档)放在您希望提供搜索功能的每个页面上。

然后,您需要提供某种 UI 以允许用户执行搜索:

<input type="search" id="search-input" placeholder="Search">

现在您想在用户在搜索框中输入内容时对 lunr 执行搜索:

var searchInput = document.querySelector('#search-input')
searchInput.addEventListener('keyup', function () {
  var results = index.search(searchInput.value)
  // do something with the results (maybe display them)
})

以上内容非常简单,但希望足以让您入门。您可以在lunr docs page 上看到另一个正在使用的示例

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-12-25
    • 1970-01-01
    • 1970-01-01
    • 2020-08-02
    • 1970-01-01
    • 2020-05-04
    • 1970-01-01
    相关资源
    最近更新 更多