{
  "url": "https://unifast.dev/zh-CN/docs/guides/vite/",
  "locale": "zh-CN",
  "title": "Vite 集成",
  "description": "使用 @unifast/vite 在构建阶段编译 Markdown 和 MDX 文件，并在 Vite 应用中直接 import 这些文件。",
  "section": "guides",
  "body": "`@unifast/vite` 提供了一个 Vite 插件，可在构建阶段编译 Markdown 和 MDX 文件。你可以在应用中直接 import `.md` 和 `.mdx` 文件。\n\n### 安装\n\n### 配置\n\n将插件添加到 Vite 配置中：\n\n```ts\n// vite.config.ts\n\nexport default defineConfig({\n  plugins: [\n    unifast({\n      // Optional: pass compile options\n      plugins: [],\n    }),\n  ],\n});\n```\n\n### 导入 Markdown\n\n配置完成后，就可以直接 import `.md` 文件：\n\n```ts\n\nconsole.log(content.html);         // Compiled HTML string\nconsole.log(content.frontmatter);  // Parsed frontmatter\nconsole.log(content.toc);          // Table of contents\n```\n\n导入的模块会提供以下字段：\n\n| 属性 | 类型 | 描述 |\n|----------|------|-------------|\n| `html` | `string` | 编译后的 HTML 输出 |\n| `frontmatter` | `Record<string, unknown>` | 解析后的 frontmatter 元数据 |\n| `toc` | `TocEntry[]` | 提取出的目录 |\n\n### 搭配插件使用\n\n通过 Vite 插件的选项传入编译插件：\n\n```ts\n// vite.config.ts\n\nexport default defineConfig({\n  plugins: [\n    unifast({\n      plugins: [frontmatter(), gfm(), syntect()],\n    }),\n  ],\n});\n```\n\n这样项目中所有 Markdown/MDX 导入都会自动应用这些插件。\n\n### MDX 支持\n\nMDX 文件会被编译为 JavaScript 模块，并默认导出一个 React 组件：\n\n```tsx\n\nfunction Page() {\n  return ;\n}\n```\n\n### 模块热替换\n\n该 Vite 插件支持 HMR。当你编辑 `.md` 或 `.mdx` 文件时，页面会在不重新加载的情况下即时更新。\n\n### 参见\n\n- [compile()](/docs/packages/node/compile) —— 底层的 compile API\n- [React 集成](/docs/guides/react) —— 在 React 中渲染编译后的内容",
  "alternates": [
    {
      "locale": "en",
      "url": "https://unifast.dev/docs/guides/vite/",
      "api": "https://unifast.dev//api/docs/guides/vite.json"
    },
    {
      "locale": "ja",
      "url": "https://unifast.dev/ja/docs/guides/vite/",
      "api": "https://unifast.dev//api/ja/docs/guides/vite.json"
    },
    {
      "locale": "zh-CN",
      "url": "https://unifast.dev/zh-CN/docs/guides/vite/",
      "api": "https://unifast.dev//api/zh-CN/docs/guides/vite.json"
    },
    {
      "locale": "zh-TW",
      "url": "https://unifast.dev/zh-TW/docs/guides/vite/",
      "api": "https://unifast.dev//api/zh-TW/docs/guides/vite.json"
    },
    {
      "locale": "ko",
      "url": "https://unifast.dev/ko/docs/guides/vite/",
      "api": "https://unifast.dev//api/ko/docs/guides/vite.json"
    },
    {
      "locale": "fr",
      "url": "https://unifast.dev/fr/docs/guides/vite/",
      "api": "https://unifast.dev//api/fr/docs/guides/vite.json"
    },
    {
      "locale": "it",
      "url": "https://unifast.dev/it/docs/guides/vite/",
      "api": "https://unifast.dev//api/it/docs/guides/vite.json"
    },
    {
      "locale": "es",
      "url": "https://unifast.dev/es/docs/guides/vite/",
      "api": "https://unifast.dev//api/es/docs/guides/vite.json"
    },
    {
      "locale": "pt-BR",
      "url": "https://unifast.dev/pt-BR/docs/guides/vite/",
      "api": "https://unifast.dev//api/pt-BR/docs/guides/vite.json"
    },
    {
      "locale": "de",
      "url": "https://unifast.dev/de/docs/guides/vite/",
      "api": "https://unifast.dev//api/de/docs/guides/vite.json"
    },
    {
      "locale": "ru",
      "url": "https://unifast.dev/ru/docs/guides/vite/",
      "api": "https://unifast.dev//api/ru/docs/guides/vite.json"
    },
    {
      "locale": "hi",
      "url": "https://unifast.dev/hi/docs/guides/vite/",
      "api": "https://unifast.dev//api/hi/docs/guides/vite.json"
    },
    {
      "locale": "id",
      "url": "https://unifast.dev/id/docs/guides/vite/",
      "api": "https://unifast.dev//api/id/docs/guides/vite.json"
    },
    {
      "locale": "tr",
      "url": "https://unifast.dev/tr/docs/guides/vite/",
      "api": "https://unifast.dev//api/tr/docs/guides/vite.json"
    },
    {
      "locale": "vi",
      "url": "https://unifast.dev/vi/docs/guides/vite/",
      "api": "https://unifast.dev//api/vi/docs/guides/vite.json"
    }
  ]
}
