可搜索 JS/Next.js 站点文本提取

Searchable JS/Next.js site text extraction

我在 https://logary.tech source, and would like to implement the document search, e.g. with Lunr 有一个 Next.js 文档站点。

如何编程 babel/webpack/nextjs 将文本(可能作为预编译 step/babel 插件)提取到 json 文件中,我可以将其用于 Lunr 的输入?

我选择使用 hgtmlparser2 作为针对开发服务器的构建管道的一部分;如果在 buildIndex.js 文件中找到此文件。

它输出 pages.json(在此提交中您会看到存根;在历史记录中向前浏览以获取 impl)——然后将其编译到 Web 应用程序中。

然后我使用LunR来执行搜索。

来自此提交:https://github.com/logary/logary/commit/d824089e29c8d40624758431f4f58d3ae1433d97