VitePress 可以单独使用,也可以安装到现有项目中。在这两种情况下,都可以使用以下方式安装它:
$ npm add -D vitepress$ pnpm add -D vitepress$ yarn add -D vitepress$ bun add -D vitepress该工具还应该将以下 npm 脚本注入到 package.json 中:
{
...
"scripts": {
"docs:dev": "vitepress dev docs",
"docs:build": "vitepress build docs",
"docs:preview": "vitepress preview docs"
},
...
}docs:dev 脚本将启动具有即时热更新的本地开发服务器。使用以下命令运行它:
$ npm run docs:dev$ pnpm run docs:dev$ yarn docs:dev$ bun run docs:dev除了 npm 脚本,还可以直接调用 VitePress:
$ npx vitepress dev docs$ pnpm vitepress dev docs$ yarn vitepress dev docs$ bun vitepress dev docs以下指南基于一些前提:
-
VitePress 站点位于项目的
docs目录中。 -
你使用的是默认的生成输出目录 (
.vitepress/dist)。 -
VitePress 作为本地依赖项安装在项目中,并且你已在
package.json中设置以下脚本:{ "scripts": { "docs:build": "vitepress build docs", "docs:preview": "vitepress preview docs" } }
-
可以运行以下命令来构建文档:
$ npm run docs:build
-
构建文档后,通过运行以下命令可以在本地预览它:
$ npm run docs:preview
preview命令将启动一个本地静态 Web 服务http://localhost:4173,该服务以.vitepress/dist作为源文件。这是检查生产版本在本地环境中是否正常的一种简单方法。 -
可以通过传递
--port作为参数来配置服务器的端口。{ "scripts": { "docs:preview": "vitepress preview docs --port 8080" } }现在
docs:preview方法将会在http://localhost:8080启动服务。
默认情况下,我们假设站点将部署在域名 (/) 的根路径上。如果站点在子路径中提供服务,例如 https://mywebsite.com/blog/,则需要在 VitePress 配置中将 base 选项设置为 '/blog/'。
例:如果你使用的是 Github(或 GitLab)页面并部署到 user.github.io/repo/,请将 base 设置为 /repo/。
如果可以控制生产服务器上的 HTTP 标头,则可以配置 cache-control 标头以在重复访问时获得更好的性能。
生产版本对静态资源 (JavaScript、CSS 和其他非 public 目录中的导入资源) 使用哈希文件名。如果你使用浏览器开发工具的网络选项卡查看生产预览,你将看到类似 app.4f283b18.js 的文件。
此哈希 4f283b18 是从此文件的内容生成的。相同的哈希 URL 保证提供相同的文件内容——如果内容更改,URL 也会更改。这意味着你可以安全地为这些文件使用最强的缓存标头。所有此类文件都将放置在输出目录的 assets/ 中,因此你可以为它们配置以下标头:
Cache-Control: max-age=31536000,immutable
::: details Netlify 示例 _headers 文件
/assets/*
cache-control: max-age=31536000
cache-control: immutable
注意:该 _headers 文件应放置在 public 目录中 (在我们的例子中是 docs/public/_headers),以便将其逐字复制到输出目录。
:::
::: details Vercel 配置示例 vercel.json
{
"headers": [
{
"source": "/assets/(.*)",
"headers": [
{
"key": "Cache-Control",
"value": "max-age=31536000, immutable"
}
]
}
]
}注意:vercel.json 文件应放在存储库的根目录中。