entryFileNames chunkFileNames assetFileNames区别
rollupOptions: {
output: {
chunkFileNames: `assets/js/[name]-[hash]${timestamp}.js`, // 引入文件名的名称
assetFileNames: `assets/[ext]/[name]-[hash]-${timestamp}.[ext]`, // 包的入口文件名称
entryFileNames: `assets/js/[name]-[hash]-${timestamp}.js`, // 资源文件像 字体,css 图片等
},
},
构建去掉console和debugger
// 使用esbuild来构建去掉console和debugger,
export default defineConfig({
build:{
minify: 'esbuild',
},
esbuild: {
drop: ['console', 'debugger'],
},
});
export default defineConfig(({ command, mode }) => ({
build:{
minify: 'esbuild',
},
esbuild: {
drop: mode === 'production' ? ['console', 'debugger'] : [],
},
})
// 使用 terser 作为构建工具
export default defineConfig({
build: {
minify: 'terser',
terserOptions: {
compress: {
drop_console: true,
drop_debugger: true,
},
},
},
})