当前位置: 首页 > news >正文

本地搜索(@vuepress/plugin-slimsearch替换vuepress-plugin-search-pro)

要实现全局搜索标签(Tag),你需要使用slimsearch插件的customFields配置项。这个功能允许你将页面中的自定义数据(比如标签、分类、作者等)添加到搜索索引中。

{"@vuepress/plugin-slimsearch":"2.0.0-rc.121"}

🏷️ 全局搜索Tag的配置方案

基础配置:搜索文章标签

假设你在文章的 Frontmatter 中是这样定义标签的:

--- title: 我的文章 tags: - Vue.js - 前端开发 - JavaScript ---

.vuepress/config.ts中添加如下配置:

import{slimsearchPlugin}from'@vuepress/plugin-slimsearch'exportdefault{plugins:[slimsearchPlugin({// 确保启用了内容索引(如果需要同时搜索正文)indexContent:true,// 自定义字段:添加标签搜索customFields:[{name:'tags',getter:(page)=>page.frontmatter.tags,formatter:'标签: $content',},],}),],}

处理不同格式的Tag

标签可能有不同的格式,你可以通过getter函数灵活处理:

customFields:[{name:'tags',getter:(page)=>{consttags=page.frontmatter.tags// 处理字符串格式: "Vue,React"if(typeoftags==='string'){returntags.split(',').map(tag=>tag.trim())}// 处理数组格式: ["Vue", "React"]if(Array.isArray(tags)){returntags}// 处理单个标签: "Vue"if(typeoftags==='string'){return[tags]}returnnull},formatter:'标签: $content',},]

多语言支持

如果你的站点有多语言,可以为不同语言设置不同的显示格式:

customFields:[{name:'tags',getter:(page)=>page.frontmatter.tags,formatter:{'/':'Tags: $content','/zh/':'标签: $content','/jp/':'タグ: $content',},},]

同时搜索多个字段

如果你想同时搜索标签、分类和作者:

customFields:[{name:'tags',getter:(page)=>page.frontmatter.tags,formatter:'🏷️ $content',},{name:'category',getter:(page)=>page.frontmatter.category,formatter:'📁 $content',},{name:'author',getter:(page)=>page.frontmatter.author,formatter:'👤 $content',},]

🔧 注意事项

1. 确保索引生效

  • 添加customFields后,需要删除.vuepress/.temp.vuepress/dist并重新构建
  • 如果搜索不到,检查 Frontmatter 中是否有search: false禁用索引

2. 调试技巧

在浏览器控制台查看索引是否包含标签数据:

// 查看搜索插件的内部状态window.__VUEPRESS__?.__plugins?.slimsearch?.index

3. 版本兼容性

  • 确保@vuepress/plugin-slimsearch的版本与你的 VuePress 核心版本兼容
  • 如果使用vuepress-theme-hope,建议通过主题的plugins.slimsearch配置,避免重复引入

4. 搜索效果

配置完成后,当你搜索"Vue.js"时,搜索结果中会出现:

  • 标题包含"Vue.js"的文章
  • 正文包含"Vue.js"的文章(如果开启indexContent
  • 标签包含"Vue.js"的文章(会显示为"标签: Vue.js")

http://www.jsqmd.com/news/486438/

相关文章:

  • 汽车控制器之软件质量管理体系
  • 2026.3.15:bochs2.6.11(带debug)虚拟机安装和使用教程
  • Java 面试题大全(整理版)附答案详解
  • SpringBoot+Vue Spring boot社区医院管理系统平台完整项目源码+SQL脚本+接口文档【Java Web毕设】
  • 2026年食用植物调和油厂家推荐:河南省淇花食用油有限公司,多品类全系供应满足多元需求 - 品牌推荐官
  • 深度解析:RNN、LSTM与GRU如何破解锂离子电池SOH预测难题?
  • 食品行业节能烘干机优质品牌推荐:工业滚筒烘干机/带式干燥机/旋转闪蒸烘干机/桨叶干燥机/气流烘干机/流化床干燥机/选择指南 - 优质品牌商家
  • 二维数组矩阵
  • 快消行业经销商管理系统公司服务商推荐 - 麦麦唛
  • 长沙心理医院指南:真实案例分享与暖心选择
  • 基于微信小程序的足浴城会员消费管理系统Python-flask
  • 多模型场景下的成本治理指标体系
  • 三阶CRFB结构Sigma - Delta调制器:SD ADC入门实战
  • YOLO模型如何训练使用排水管道缺陷检测数据集 检测排水管道中支管暗接、变形、沉积、错口、残墙坝根、异物插入、腐蚀、浮渣、结垢、破裂、起伏、树根实现可视化评估及推理
  • Diffusion 模型训练机制深度解析:多步去噪、噪声监督与“防作弊”原理
  • 女生风格电商系统 计算机毕设
  • 亚古数据:如何调取新加坡公司的原始工商文档?
  • 2026年做啤酒花回收的公司有哪些?行业技术应用解析 - 品牌排行榜
  • 2059年的地球,我用Python预言给你看!附完整实验结果和可视化界面详解
  • 干货合集:10个AI论文网站测评!继续教育毕业论文写作必备工具推荐
  • Linux camera驱动开发(vivado hls不能导出ip的问题)
  • Python-flask个人健康饮食运动信息管理小程序
  • 基于多目标粒子群算法的冷热电联供综合能源系统运行优化探索
  • YOLOv8目标跟踪与自定义区域逻辑的完美结合:从手动实现到智能集成
  • 基于PSO算法的微电网能源优化调度探索
  • 一个比 Nginx 还简单的 Web 服务器
  • 计院操作系统实验4
  • 2026全自动过滤系统哪家专业?行业技术解析 - 品牌排行榜
  • HCPL-0720-060E,40纳秒传播延迟,CMOS光耦合器
  • 2026年3月德阳全屋定制/木作/定制家具/衣柜/橱柜厂家综合评估与技术选型报告 - 2026年企业推荐榜