打包去除Console & debugger
- 关于打包去除console & debugger 官网给出了两种方案一种是
vite
默认配置,一种需要额外插件。
build.minify
- 类型:
boolean | 'terser' | 'esbuild'
- 默认: 客户端构建默认为
'esbuild'
,SSR构建默认为false
设置为
false
可以禁用最小化混淆,或是用来指定使用哪种混淆器。默认为 Esbuild,它比 terser 快 20-40 倍,压缩率只差 1%-2%。注意,在 lib 模式下使用
'es'
时,build.minify
选项不会缩减空格,因为会移除掉 pure 标注,导致破坏 tree-shaking。当设置为
'terser'
时必须先安装 Terser。npm add -D terser
第一种 默认配置
// https://vitejs.dev/config/
export default defineConfig({
build:{
// 可不写,官方默认。
minify:'esbuild',
},
// 只需这么配置,打包文件禁止 console & debugger
esbuild: {
drop: ['console', 'debugger']
},
})
第二种 Terser
- 安装插件
npm install -D terser
- 配置
// https://vitejs.dev/config/
export default defineConfig({
build:{
minify:'terser',
terserOptions: {
compress: {
drop_console: true,
drop_debugger: true
}
},
},
})