搜索无结果.md 1.28 KB

搜索无结果

现象:输入关键词后无任何搜索结果

根本原因@easyops-cn/docusaurus-search-local 仅在 npm run build 时生成搜索索引,npm run start(开发模式)不生成索引。

解决方案

# 1. 先构建
npm run build

# 2. 用 serve 启动预览(而非 start)
npm run serve -- --port 3000

验证步骤

  1. 打开 http://localhost:3000
  2. 点击导航栏搜索图标,输入 "产品"
  3. 应返回多篇结果(含中文匹配)

排查清单

检查项 说明
是否执行了 npm run build 索引在 build 阶段生成
是否用 serve 而非 start start 不读取 build 产物
插件配置中 language 是否含 zh language: ['zh', 'en'] 支持中文分词
build 日志中是否有搜索相关报错 关注 [Search] 开头的日志行

插件配置参考

docusaurus.config.js 中 plugins 部分:

plugins: [
  [
    searchLocal,
    {
      hashed: true,
      language: ['zh', 'en'],
      highlightSearchTermsOnTargetPage: true,
      explicitSearchResultPath: true,
    },
  ],
],

注意事项

  • 每次文档更新后需重新 npm run build 才能搜索到新内容
  • 生产部署时 CI/CD 流程中必须包含 npm run build 步骤