手把手搭建VuePress文档(四)

简介: 原本想用 gitbook 实现流沙团队文旦,奈何出现一堆奇奇怪怪的 bug 后,我花了一天时间写完文档,然后决定放弃它使用 VuePress。

3. 配置


3.1 配置文件


如果没有任何配置,你的 VuePress 站点仅有一些最基础的功能。为了更好地自定义你的网站,让我们首先在你的文档目录(docs)下创建一个 .vuepress 目录,所有 VuePress 相关的文件都将会被放在这里。你的项目结构可能是这样:

62.png

VuePress 站点必要的配置文件是 .vuepress/config.js,它应该导出一个 JavaScript 对象。如果你使用 TypeScript ,你可以将其替换为 .vuepress/config.ts ,以便让 VuePress 配置得到更好的类型提示。


如果你是 JavaScript :


63.png63.png

63.png

如果你是 TypeScript


64.png

提示

我们接下来会把这个配置对象称为 VuePress 配置.

3.2 配置作用域

你可能已经注意到了,在 VuePress 配置中有一项 themeConfig 配置项。


在 themeConfig 外部的配置项属于 站点配置 ,而在 themeConfig 内部的配置项则属于 主题配置。


3.2.1 站点配置

站点配置的意思是,无论你使用什么主题,这些配置项都可以生效。


我们知道,每一个站点都应该有它的 lang, title 和 description 等属性,因此 VuePress 内置支持了这些属性的配置。


提示: 前往 配置参考 查看所有站点配置。


这里我做一些我自己的配置。


VuePress 配置的参考文档,可以通过配置文件来设置这些配置。 VuePress 约定的配置文件为(按照优先顺序):


当前工作目录 cwd 下:

vuepress.config.ts

vuepress.config.js

源文件目录 sourceDir 下:

.vuepress/config.ts

.vuepress/config.js

你也可以通过 命令行接口 的 --config 选项来指定配置文件。


1. base

类型: string


默认值: /


详情:


如果你想让你的网站部署到一个子路径下,你将需要设置它。 它的值应当总是以斜杠开始,并以斜杠结束。


举例来说,如果你想将你的网站部署到 https://quicksandteam.github.io/aiyc/,那么 base 应该被设置成 "/aiyc/"。


base 将会作为前缀自动地插入到所有以 / 开始的其他选项的链接中,所以你只需要指定一次。


参考:


指南 > 静态资源 > Base Helper

指南 > 部署

2. lang

类型: string


默认值: en-US


详情:


站点的语言。


它将会在最终渲染出的 HTML 中作为 <html> 标签的 lang 属性。


它可以设置在不同语言的 locales 中。中文:zh-CN


参考:


配置 > locales

3. title

类型: string


默认值: ''


详情:


站点的标题。


它将会作为所有页面标题的后缀,并且在默认主题的导航栏中显示。


它可以设置在不同语言的 locales 中。


参考:


配置 > locales

4. description

类型: string


默认值: ''


详情:


站点的描述。


它将会在最终渲染出的 HTML 中作为 <meta name="description" /> 标签的 content 属性。它会被每个页面的 Frontmatter 中的 description 字段覆盖。


它可以设置在不同语言的 locales 中。


参考:


配置 > locales

Frontmatter > description

5. head

类型: HeadConfig[]


默认值: []


详情:


在最终渲染出的 HTML 的 <head> 标签内加入的额外标签。


你可以通过 [tagName, { attrName: attrValue }, innerHTML?] 的格式来添加标签。


它可以设置在不同语言的 locales 中。


示例:


增加一个自定义的 favicon :

65.png

渲染为:

66.png

虽然,后面我会放上我写的配置,但是现在我还是放一下这个 head 的多个 html 写法:

67.png

那我对应的文件夹以及图片的结构呢?

68.png

参考: https://v2.vuepress.vuejs.org/zh/guide/assets.html


参考:


配置 > locales

Frontmatter > head

6. locales

类型: { [path: string]: Partial<SiteLocaleData> }

默认值: {}

详情:


多语言支持的各个语言 locales 。


lang

title

description

head

参考:


指南 > I18n


写到 6 这个点呢,就不得不说怎么配置了。不过不是现在,是后面的站点配置。


不过写到这里,也就开始了主题的配置了。


3.2.2 主题配置

主题配置将会被 VuePress 主题来处理,所以它取决于你使用的主题是什么。


如果你没有设置 VuePress 配置的 theme 配置项,则代表使用的是默认主题。至于其他主题,等我有时间,我一定安排。如果你们着急就分享和关注公众号:AI悦创,并私信我哈。


提示: 前往 默认主题 > 配置参考 查看默认主题的配置。


1. home

类型: string

默认值: /

详情:


首页的路径。


它将被用于:


导航栏中 Logo 的链接

404 页面的 返回首页 链接


2. navbar

类型: false | (NavbarItem | NavbarGroup | string)[]

默认值: []

详情:


导航栏配置。


设置为 false 可以禁用导航栏。


为了配置导航栏元素,你可以将其设置为 导航栏数组 ,其中的每个元素是 NavbarItem 对象、 NavbarGroup 对象、或者字符串:


NavbarItem 对象应该有一个 text 字段和一个 link 字段,还有一个可选的 activeMatch 字段。

NavbarGroup 对象应该有一个 text 字段和一个 children 字段。 children 字段同样是一个 导航栏数组 。

字符串应为目标页面文件的路径。它将会被转换为 NavbarItem 对象,将页面标题作为 text ,将页面路由路径作为 link 。

写到这里的时候,我发现文档很强很全,所以我直接待会把配置好的文件内容贴出来。


接下来,我配置一下,目前需要的导航栏:


目前设想,我需要:


专栏

Github

关于团队

资源分享

技术杂谈

付费教学

数据结构与算法

Java 入门

Python 入门

Go 入门

源码分析

广告

期末不挂科


3. 站点多语言配置

要启用 VuePress 的多语言支持,首先需要使用如下的文件目录结构:

69.png

那上面是官方给的结构,我是中国人,所以呢。我就把 zh 改成 en 吧。

70.png

然后,在你的 配置文件 中设置 locales 选项:

71.png

那和上面也是一样的,我要设置一个英文站点,但是显然上面的官方提供样例的配置是不够的,还需要看这个连接的文档:

所以我也一同配置一波:

72.png

如果一个语言没有声明 lang, title, description 或者 head ,VuePress 将会尝试使用顶层配置的对应值。如果每个语言都声明了这些值,那么顶层配置中的对应值可以被省略。


提示: 配置参考: locales


但是,上面的配置我发现显示的和我时间的语言有区别。


73.png

第一个应该是中文,却上图那样显示。第二个也是:

74.png

第二个还算好一点,所以进行优化修改:75.png


待更新!
73.png




目录
相关文章
|
JSON JavaScript 前端开发
国际化:实现Vue应用的多语言支持
【4月更文挑战第23天】本文阐述了在Vue应用中实现多语言支持的重要性及步骤。使用vue-i18n插件,结合明确的语言需求和资源管理,实现文本翻译。配置路由和语言检测以支持用户切换,动态加载语言包以优化性能。同时考虑日期和货币格式化,确保全面的国际化体验。经过测试和持续维护,打造尊重文化多样性的全球化应用。
694 0
|
JavaScript UED
用组件懒加载优化Vue应用性能
用组件懒加载优化Vue应用性能
|
自然语言处理 JavaScript 前端开发
Vue3 + Vite + TypeScript + Element-Plus:从零到一构建企业级后台管理系统(前后端开源)(1)
Vue3 + Vite + TypeScript + Element-Plus:从零到一构建企业级后台管理系统(前后端开源)(1)
|
6月前
|
人工智能 自然语言处理 监控
企业有哪些agent应用场景(2026年新版)
阿里云瓴羊推出企业级AI Agent解决方案,整合Quick Audience(智能营销)、Quick Service(情感化服务)、Quick BI(对话式BI)与Dataphin(自动驾驶数据治理),打通数据孤岛与业务断点,构建安全可控、跨场景协同的“数字员工团队”,赋能企业智能化升级。(239字)
|
6月前
|
Arthas Java 测试技术
Maven 依赖冲突解决
本文深入剖析Java开发中Maven依赖冲突的根源与解决方案。首先解析Maven依赖调解规则(最短路径优先和声明优先)及JVM类加载机制,揭示冲突本质。随后介绍全链路排查工具链,包括Maven命令行、IDEA插件和线上诊断工具Arthas。重点提出7大解决方案,按优先级排序:1)dependencyManagement统一版本管理;2)直接声明目标版本;3)精准排除冲突依赖;4)调整依赖声明顺序;5)可选依赖标记;6)合理设置scope;7)类加载器隔离。
972 5
|
7月前
|
人工智能 监控 调度
智能体来了(西南总部):基于Coze理念的AI Agent指挥官体系
本文提出基于Coze理念的AI Agent指挥官体系,通过“指挥—调度—执行”三层分治架构,解决多智能体协同中的目标分散、任务失序与系统失控难题,提升复杂AI系统的稳定性、可解释性与可扩展性,为组织级智能基础设施建设提供结构化支撑。
409 1
|
8月前
|
人工智能 数据可视化 算法
构建AI智能体:八十七、KM与Chinchilla法则:AI模型发展的两种训练法则完全解析
摘要: 大模型训练中,如何在有限计算预算(C≈6ND)下最优分配模型参数量(N)与训练数据量(D)是关键挑战。KM扩展法则主张“模型优先”,认为增大N的收益高于D(α=0.076<β=0.103),推荐N∝C^0.73、D∝C^0.27。Chinchilla法则则通过实验发现大模型普遍训练不足,提出平衡策略(α=β≈0.38),推荐N∝D∝C^0.5,即在相同预算下减小模型规模并大幅增加数据量,可提升性能。
819 11
|
缓存 弹性计算 数据挖掘
阿里云服务器经济型e与通用算力型u1实例怎么选?二则性能及适用场景区别参考
在当今数字化时代,云服务器已成为众多个人开发者、学生、小微企业以及中小企业开展业务、搭建网站、运行应用程序等不可或缺的基础设施。阿里云推出了多种类型的云服务器实例,以满足不同用户的需求。其中,经济型e实例和通用算力型u1实例备受关注。经济型e实例ECS云服务器2核2G3M带宽新购和续费同价99元1年,通用算力型u1实例2核4G5M带宽新购和续费同价199元1年(限企业用户)、4核8G云服务器955元1年。本文将为大家介绍阿里云服务器中的经济型e实例和通用算力型u1实例的特点、区别以及新手选择参考。
|
9月前
|
人工智能 自然语言处理 安全
企业如何把智能客服系统用好?深挖降本提效的核心应用价值(2025年12月更新)
在数字化转型背景下,智能客服成为企业降本提效的关键。本文解析瓴羊Quick Service等主流产品核心能力,探讨如何通过知识库运营、人机协同与数据闭环,最大化智能客服价值,助力企业构建高效服务体系。
|
缓存 JavaScript 前端开发
【开发规范系列】(四)前端开发规范(四)
【开发规范系列】(四)前端开发规范(四)