先上效果
1、安装 vite-plugin-html
2、配置多个模板
每个入口都要有模板(index.html、App.vue、main.js复制一份,根据实际需求调整三个文件)
3、配置vite.config.js
4、配置环境变量
5、打包命令
npm run build
npm run build:form
6、代码片段
export const configMap = {
dist: {
minify: true,
pages: [
{
filename: 'index', // filename 默认是template文件名,就是beijing.html
entry: '/src/main.js',
template: 'index.html'
}
]
},
form: {
minify: true,
pages: [
{
filename: 'form',
entry: '/src/views/resourceManage/fieldFormManage/main.js',
template: 'form.html'
}
]
}
}
import { createHtmlPlugin } from 'vite-plugin-html'
const env = loadEnv(mode, process.cwd())
const projectName = env.VITE_PROJECT_NAME
createHtmlPlugin(configMap[projectName])
build: {
cssCodeSplit: true,
emptyOutDir: true,
sourcemap: false,
assetsDir: 'assets', // 默认 assets
outDir: projectName === 'dist' ? 'dist' : `dist-${projectName}`, // 输出到dist
rollupOptions: {
output: {
assetFileNames: 'assets/[name]-[hash].[ext]', // 静态资源
chunkFileNames: 'js/[name]-[hash].js', // 代码分割中产生的 chunk
entryFileNames: 'js/[name]-[hash].js', // 指定 chunks 的入口文件
compact: true
}
}
}
VITE_PROJECT_NAME='form'
(完)