跳转到内容

快速开始 ​

在线尝试 ​

可以直接在 StackBlitz 上进行在线尝试。

安装 ​

前置准备 ​

  • Node.js 22 及以上版本。
  • 通过命令行界面 (CLI) 访问 VitePress 的终端。
  • 支持 Markdown 语法的编辑器。
    • 推荐 VSCode 及 TypeScript / TSX(React)工具链;如需对照上游 Vue 版历史文档,也可安装 Volar。

VitePress 可以单独使用,也可以安装到现有项目中。在这两种情况下,都可以使用以下方式安装它:

sh
$ npm add -D @10coding/vitepress-react@next
sh
$ pnpm add -D @10coding/vitepress-react@next
sh
$ yarn add -D @10coding/vitepress-react@next
sh
$ bun add -D @10coding/vitepress-react@next

注意

VitePress 是仅 ESM 的软件包。不要使用 require() 导入它,并确保最新的 package.json 包含 "type": "module",或者更改相关文件的文件扩展名,例如 .vitepress-react/config.js 到 .mjs/.mts。更多详情请参考 Vite 故障排除指南。此外,在异步 CJS 上下文中,可以使用 await import('@10coding/vitepress-react') 代替。

安装向导 ​

VitePress 附带一个命令行设置向导,可以帮助你构建一个基本项目。安装后,通过运行以下命令启动向导:

sh
$ npx vitepress-react init
sh
$ pnpm vitepress-react init
sh
$ yarn vitepress-react init
sh
$ bun vitepress-react init

将需要回答几个简单的问题:

init.ansi
init.ansi
┌  Welcome to VitePress!
│
◇  Where should VitePress initialize the config?
│  ./docs
│
◇  Where should VitePress look for your markdown files?
│  ./docs
│
◇  Site title:
│  My Awesome Project
│
◇  Site description:
│  A VitePress Site
│
◇  Theme:
│  Default Theme
│
◇  Use TypeScript for config and theme files?
│  Yes
│
◇  Add VitePress npm scripts to package.json?
│  Yes
│
◇  Add a prefix for VitePress npm scripts?
│  Yes
│
◇  Prefix for VitePress npm scripts:
│  docs
│
└  Done! Now run pnpm run docs:dev and start writing.

React 作为依赖

react / react-dom(React 19)是本包的必需 peerDependencies:站点运行时(hydration)与 md 页面编译产物的 JSX runtime 都要从宿主根解析 react,而 strict pnpm 只会把宿主直接声明的依赖放在根上——所以宿主项目必须能解析到它们。

  • npm(≥ 7):安装本包时会自动安装 peer,上面一条命令即可。
  • pnpm / yarn:需要显式安装:pnpm add -D @10coding/vitepress-react react react-dom(pnpm 默认不自动安装 peer)。
  • 用 vitepress-react init 搭建的站点会自动把 @10coding/vitepress-react、react、react-dom 写入 devDependencies;之后只需 pnpm install / npm install 即可启动,无需再手动添加。

文件结构 ​

如果正在构建一个独立的 VitePress 站点,可以在当前目录 (./) 中搭建站点。但是,如果在现有项目中与其他源代码一起安装 VitePress,建议将站点搭建在嵌套目录 (例如 ./docs) 中,以便它与项目的其余部分分开。

假设选择在 ./docs 中搭建 VitePress 项目,生成的文件结构应该是这样的:

.
├─ docs
│  ├─ .vitepress-react
│  │  └─ config.js
│  ├─ api-examples.md
│  ├─ markdown-examples.md
│  └─ index.md
└─ package.json

docs 目录作为 VitePress 站点的项目根目录。.vitepress-react 目录是 VitePress 配置文件、开发服务器缓存、构建输出和可选主题自定义代码的位置。

提示

默认情况下,VitePress 将其开发服务器缓存存储在 .vitepress-react/cache 中,并将生产构建输出存储在 .vitepress-react/dist 中。如果使用 Git,应该将它们添加到 .gitignore 文件中。也可以手动配置这些位置。

配置文件 ​

配置文件 (.vitepress-react/config.js) 让你能够自定义 VitePress 站点的各个方面,最基本的选项是站点的标题和描述:

.vitepress-react/config.js
.vitepress-react/config.js
js
export default {
  // 站点级选项
  title: 'VitePress',
  description: 'Just playing around.',

  themeConfig: {
    // 主题级选项
  }
}

还可以通过 themeConfig 选项配置主题的行为。有关所有配置选项的完整详细信息,请参见配置参考。

源文件 ​

.vitepress-react 目录之外的 Markdown 文件被视为源文件。

VitePress 使用 基于文件的路由:每个 .md 文件将在相同的路径被编译成为 .html 文件。例如,index.md 将会被编译成 index.html,可以在生成的 VitePress 站点的根路径 / 进行访问。

VitePress 还提供了生成简洁 URL、重写路径和动态生成页面的能力。这些将在路由指南中进行介绍。

启动并运行 ​

该工具还应该将以下 npm 脚本注入到 package.json 中:

package.json
package.json
json
{
  ...
  "scripts": {
    "docs:dev": "vitepress-react dev docs",
    "docs:build": "vitepress-react build docs",
    "docs:preview": "vitepress-react preview docs"
  },
  ...
}

docs:dev 脚本将启动具有即时热更新的本地开发服务器。使用以下命令运行它:

sh
$ npm run docs:dev
sh
$ pnpm run docs:dev
sh
$ yarn docs:dev
sh
$ bun run docs:dev

除了 npm 脚本,还可以直接调用 VitePress:

sh
$ npx vitepress-react dev docs
sh
$ pnpm vitepress-react dev docs
sh
$ yarn vitepress-react dev docs
sh
$ bun vitepress-react dev docs

更多的命令行用法请参见 CLI 参考。

开发服务应该会运行在 http://localhost:5173 上。在浏览器中访问 URL 以查看新站点的运行情况吧!

下一步 ​