webpack - 可搜索的 JS/Next.js 站点文本提取
问题描述
我在https://logary.tech source有一个 Next.js 文档站点,并希望实现文档搜索,例如使用Lunr。
如何对 babel/webpack/nextjs 进行编程以将文本(可能作为预编译步骤/babel 插件)也提取到 json 文件中,我可以将其用于 Lunr 的输入?
解决方案
我选择使用 hgtmlparser2 作为针对开发服务器的构建管道的一部分;如果在buildIndex.js文件中找到它。
它输出pages.json(在这个提交中,您会看到存根;在历史中向前浏览 impl)——然后将其编译到 Web 应用程序中。
然后我使用LunR执行搜索。
从这个提交:https ://github.com/logary/logary/commit/d824089e29c8d40624758431f4f58d3ae1433d97
推荐阅读
- angularjs - $rootScope.$broadcast 没有被触发
- pandas - 熊猫,将单元格从工作簿复制到另一个
- reactjs - 根据初始查询的数据触发第二个 GraphQL 查询
- shibboleth - 如何在 2 个冗余服务器上设置 2 个相同的 Shibboleth SP
- socket.io - 当 navigator.online 更改为 true 时如何告诉 socket.io 立即重新连接
- php - Slim REST API 从数据库和图像文件中删除记录
- c++ - 使用 Windows API 枚举端口时如何获取扩展端口信息
- javascript - TypeScript 编译错误:Array.map(callback) 表达式不可调用
- php - 尝试使用控制器方法删除文件夹时如何调试 AJAX 响应中的错误?
- html - 元素按钮不能作为a元素的后代出现如何解决