Appearance
VitePess 相关设置
设置vitepress输出目录
vitepress默认情况下,build的输出目录在 doc/.vitepress/dist 但如果是想在一个仓库中进行编辑,但在另一个仓库中进行发布的话,会导致冲突,所以想把vitepress的build输出目录调整 由于之前没有仔细看文档,以为可以通过package.json进行修改
json
"scripts": {
"docs:dev": "vitepress dev docs",
"docs:build": "vitepress build docs --outDir outdir",
"docs:serve": "vitepress serve docs"
}
但这样不生效,然后查看vitepress的config定义才知道,如要在 doc/.vitepress/config.js 中修改,类似如下
js
import { defineConfig } from 'vitepress'
export default defineConfig({
outDir: 'outdir'
})
所以编辑的时候还是要打开IDE的自定义提示,可以少走很多弯路
让vitepress支持mermaid
默认情况下,vitepress是不支持flowchart组件mermaid的,用markdown-it-meraid,即通过在config.js中配置md扩展,只能在页面上生成类似如下的代码
html
<div class="mermaid">
GRAPH
</div>
但是由于vitepress是服务端渲染,页面中对mermaid的引用就没了。导致无法正确的显示流程图
经过各种查找,发现有个实现了一个vitepress-plugin-mermaid,虽然使用起来比较麻烦,总算解决了问题。具体的可以参考https://github.com/emersonbottero/vitepress-plugin-mermaid上的说明。
需要注意的是,由于自己是使用yarn add 添加依赖,而说明中指定的npm i,所以需要再添加对 mermaid mutation-observer 这两个组件的依赖。
需要注意的是,这个插件目前更新过很多轮,无论是使用形式,还是依赖库都有了很大的变化。需要根据自己使用的版本来适配,需要发现解决不了的问题,可以去看一看这个仓库的issue列表,一般都有人遇到类似的问题及解决方案
升级到Vitepress 1.0
Vitepress由于还在非常早期的阶段,版本号突然从之前的0.22升级到了1.0,并带来了一些breakchange,并导致无法编译。检查了之后发现:
- 切换了markdown的实现,之前的yml被认为不识别的语言。检查后发现了改成了yaml
- sidebar的children改成了items
修改了这两个点之后,可以正常变异并正确展示了。