简体中文
vite-plugin-build-chunk
在 Vite 构建完成后,根据配置生成额外的构建产物(如不同格式的 chunk 文件),适用于需要多格式输出或二次构建的场景。
安装
bash
npm add vite-plugin-build-chunkbash
pnpm add vite-plugin-build-chunkbash
yarn add vite-plugin-build-chunk用法
在 vite.config.ts 中配置插件:
typescript
import buildChunk from 'vite-plugin-build-chunk';
export default {
plugins: [
buildChunk({
build: [ // 必须配置顶层的 `build` 属性
{
chunk: 'main.mjs', // 主构建输出目录(outDir)内的文件名
format: 'umd', // 构建格式(默认 'umd')
name: 'MyLib', // 全局变量名(仅 UMD/IIFE 生效)
},
// 可添加多个配置对象
]
}),
],
};fileName 示例
typescript
// 默认模板(如 es → main.mjs,cjs → main.js,umd → main.umd.js)
fileName: undefined,
// 自定义模板字符串(`[name]` 等占位符会由 Vite 替换)
fileName: '[name]',
// 使用函数动态生成
fileName: (format, entryName) => {
return `${entryName}-${format}.js`;
}注意事项
- 配置结构:必须通过
build属性传递配置数组或对象,例如:typescriptbuildChunk({ build: [...] }) - 入口路径:
chunk是主构建输出目录(outDir)内的文件名,插件会以主构建的outDir为基准解析它,而不是项目根目录。 - 多配置支持:通过
build数组配置多个构建任务,每个任务生成独立的构建产物。 - 静默模式:二次构建内部以
logLevel: 'silent'运行,不会干扰主构建的输出。 - 格式默认值:
format默认为umd,若未指定将使用此格式。
示例输出
若配置如下:
typescript
{
build: [{
chunk: 'main.mjs',
name: 'MyLib',
format: 'umd'
}]
}生成的文件路径可能为:
dist/main.umd.js