打包配置优化

去除console debugger配置

安装依赖:terser-webpack-plugin

这个报错是 terser-webpack-plugin版本与 Webpack 版本不兼容 导致的(Vue CLI 项目默认用 Webpack 4,但你安装的是适配 Webpack 5 的terser-webpack-plugin 5.x 版本)

步骤 1:卸载高版本的terser-webpack-plugin

先卸载当前不兼容的版本:

javascript 复制代码
npm uninstall terser-webpack-plugin

步骤 2:安装适配 Webpack 4 的版本

Vue CLI(Webpack 4)需要安装terser-webpack-plugin@4.x版本:

javascript 复制代码
npm install terser-webpack-plugin@4.2.3 --save-dev

步骤 3:修改vue.config.js的配置(适配 4.x 版本)

4.x 版本的配置和 5.x 略有不同,需要调整为:

javascript 复制代码
module.exports = {
  configureWebpack: {
    optimization: {
      minimizer: [
        new (require('terser-webpack-plugin'))({
          terserOptions: {
            compress: {
              drop_console: process.env.NODE_ENV === 'production',// 生产环境移除所有console
              drop_debugger: true,// 始终移除debugger
              pure_funcs: ['console.log', 'console.warn'] // 精准移除指定console方法
            },
            output: {
              comments: false // 注意:4.x版本的注释配置在output里
            }
          },
          extractComments: false // 不将注释提取到单独的文件中
        })
      ]
    }
  },
   // 可选:Vue CLI 特有的配置,进一步优化
  productionSourceMap: false, // 关闭生产环境sourceMap(减少打包体积,同时避免源码暴露)
};
相关推荐
Hello--_--World1 天前
vite:什么是热更新?vite 和 webpack 有什么区别?vite常见配置和优化手段?
前端·webpack·node.js
Hello--_--World1 天前
Vite:什么是bundleless?哪些要打包,哪些不要打包?依赖预构建是什么?依赖预构建如何减少网络请求的?esbuild 又是什么?
前端·javascript·webpack·vite
Rooting++1 天前
vue2+webpack打包优化的相关问题
前端·webpack·node.js
Tatan3 天前
【里程碑二】基于webpack5完成的多前端工程化建设
webpack
Hello--_--World6 天前
Webpack:Webpack 核心配置、什么是 Loader? 什么是plugin?webpack 构建流程
前端·webpack·node.js
前端若水7 天前
安装 markdown-it 后项目报错,可能是 Vue/Webpack 项目中 Quill 的问题(ES6+ 语法不支持)
vue.js·webpack·es6
李白的天不白7 天前
代码引用错误和性能优化建议。
webpack
Beginner x_u7 天前
前端八股整理(工程化 02)|CommonJS/ESM、Webpack Loader/Plugin 与Vite 对比
前端·webpack·node.js·plugin·loader
tzy2338 天前
梳理一下前端模块化规范:CommonJS ESM AMD CMD UMD
前端·webpack·cmd·commonjs·amd·esm·umd
李白的天不白11 天前
webpack 与 webpack-cli 版本匹配问题
前端·webpack·node.js