// 打包配置
build: {
// https://vite.dev/config/build-options.html
sourcemap: command === "build" ? false : "inline",
outDir: "dist",
assetsDir: "assets",
chunkSizeWarningLimit: 2000,
rollupOptions: {
output: {
chunkFileNames: "static/js/[name]-[hash].js",
entryFileNames: "static/js/[name]-[hash].js",
assetFileNames: "static/[ext]/[name]-[hash].[ext]",
},
},
},
-
outDir
: 构建输出目录(默认dist
) -
assetsDir
: 静态资源存放子目录 -
chunkSizeWarningLimit
:设置 chunk 大小警告阈值(单位 KB)chunk
: Chunk 是 Webpack 在构建过程中生成的一个或多个文件的集合。每个 chunk 可以包含一个或多个模块。通过将代码分割成多个 chunks,可以实现按需加载,减少初始加载时间,提升应用性能。
-
rollupOptions
- 在 Vite 中,开发环境和生产环境使用了不同的构建工具:rollup和esbuild
- 开发环境:Vite 使用 esbuild 进行快速的热重载和模块编译。esbuild 以其极高的速度著称,可以显著提高开发体验。
- 生产环境:Vite 使用 Rollup 进行最终的打包和优化。Rollup 是一个功能强大的模块打包器,擅长于生成优化后的静态资源,如代码压缩、Tree Shaking 等。
- 输出文件命名规则:
配置项 格式 示例输出 说明 chunkFileNames
static/js/[name]-[hash].js
static/js/vendor-a1b2c3.js
非入口 chunk 文件 entryFileNames
static/js/[name]-[hash].js
static/js/main-d4e5f6.js
入口 chunk 文件 assetFileNames
static/[ext]/[name]-[hash].[ext]
static/css/style-x7y8z9.css
静态资源文件 - 占位符说明:
[name]
:文件原名(不含扩展名)[hash]
:基于文件内容生成的哈希值[ext]
:文件扩展名(如css
、png
)
- 在 Vite 中,开发环境和生产环境使用了不同的构建工具:rollup和esbuild