drop: ['console,'debugger'], // 删除 所有的console 和 debugger } }) terser: vite 4.X 版本已经不集成 terser,需要自行下载 npm i terser -D 只删除console.log和debugger import { defineConfig } from "vite"; export default defineConfig({ build: { minify: 'terser', // 启用 terser 压缩 te...
build.minify,默认为 Esbuild,它比 terser 快 20-40 倍,压缩率只差 1%-2%。 terser库,用于处理 js 的压缩和混淆 ,官网:https://terser.org/,vite配置如下: 代码语言:javascript 复制 exportdefaultdefineConfig({build:{minify:"terser",terserOptions:{compress:{drop_console:true,//去掉所有consoledrop_debug...
build: { minify: "terser", terserOptions: { compress: { //生产环境时移除console drop_console: true, drop_debugger: true, }, }, }, 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. vite.config.ts 完整代码: import { defineConfig } from "vite"; import AutoImport from "unplugin-auto-import/...
build: { target:'es2020', minify:'terser', // rollup 配置 rollupOptions: { output: { chunkFileNames:'js/[name]-[hash].js',// 引入文件名的名称 entryFileNames:'js/[name]-[hash].js',// 包的入口文件名称 assetFileNames:'[ext]/[name]-[hash].[ext]',// 资源文件像 字体,图片等...
build: { minify:"terser", // 必须开启:使用terserOptions才有效果 terserOptions: { compress: {//生产环境时移除consoledrop_console:true, drop_debugger:true, }, }, }, resolve: {//配置根路径别名: import('@/pages/login/login.vue')alias: {"@": path.resolve(__dirname,"src"),//注意一定...
如果build.minify选项为'terser','esnext'将会强制降级为'es2019'。 其他情况下将完全不会执行转译。 转换过程将会由 esbuild 执行,并且此值应该是一个合法的esbuild 目标选项。自定义目标也可以是一个 ES 版本(例如:es2015)、一个浏览器版本(例如:chrome58)或是多个目标组成的一个数组。
build: { minify: 'terser', // 'terser' 相对较慢,但大多数情况下构建后的文件体积更小。'esbuild' 最小化混淆更快但构建后的文件相对更大。 terserOptions: { // minify 为terser生效 若minify为esbuild 则需要走esbuild的配置 compress: {
另外值得一提的是, tree-shaking 是 esbuild 默认内置的,无法关闭。 生产构建 在esbuild 命令中使用 "minify "和 "bundle " 选项不会创建一个像 Rollup/Terser 流水线一样小的 bundle 。这是因为 esbuild 牺牲了一些 bundle 大小的优化来尽可能少的通过你的代码。然而,根据你的项目,这种差异可能是微不足...
build: {//移除生产环境logminify: 'terser',terserOptions: {compress: {//生产环境时移除consoledrop_console: true,drop_debugger: true,},},//rollup打包后的静态资源名称格式rollupOptions: {output: {chunkFileNames: 'static/js/[name]-[hash].js',entryFileNames: 'static/js/[name]-[hash].js'...
由于vite 在开发环境使用 esbuild,你可以配置仅在生产环境启用 drop。 exportdefaultdefineConfig(({command,mode})=>({build:{minify:'esbuild',// 默认}, esbuild:{drop:mode==='production'?['console','debugger']:[],},}) 如果你仍然使用 terser 作为构建工具,可以通过如下配置实现此目的。