Skip to content

Vite 配置

internal/vite-config 提供共享的 Vite 配置生成器。

使用

ts
import { defineConfig } from "@vh5/vite-config";

export default defineConfig(async () => ({
  application: {
    uiLibrary: "nut", // 'nut' | 'vant' | 'varlet'
  },
  vite: {
    // 自定义 Vite 配置
  },
}));

内置插件

插件说明
@vitejs/plugin-vueVue 3 SFC 支持
@vitejs/plugin-vue-jsxJSX/TSX 支持
unplugin-auto-importAPI 自动导入
unplugin-vue-components组件按需自动注册
unplugin-vue-router类型安全文件路由
unocss原子化 CSS 引擎
vite-plugin-eruda-pro移动端调试控制台(dev)
vite-plugin-vue-devtoolsVue DevTools
postcss-mobile-forever移动端视口适配
vite-plugin-htmlHTML 模板注入
vite-plugin-compressionGzip/Brotli 压缩
vite-plugin-pwaPWA 支持
nitro-mockNitro Mock 服务

按需加载配置

通过 uiLibrary 选项自动配置对应的 Resolver:

UI 库Component ResolverAuto Import ResolverimportStyle
vantVantResolverVantResolverfalse(全量CSS)
varletVarletImportResolverVarletImportResolver({ autoImport: true })自动
nutuiNutUIResolver自动

配置选项

ts
interface ApplicationPluginOptions {
  uiLibrary?: "nut" | "vant" | "varlet";
  devtools?: boolean;
  compress?: boolean;
  compressTypes?: ("brotli" | "gzip")[];
  html?: boolean;
  pwa?: boolean;
  injectAppLoading?: boolean;
  nitroMock?: boolean;
}

Released under the MIT License.