vue-cli 3 生产环境去除控制台打印

与vue-cli2.0使用了uglifyjs-webpack-plugin插件进行优化配置不同,vue-cli3.0在打包过程中就使用了terser-webpack-plugin插件进行优化。

具体配置可以参考node_modules/@vue/cli-service/lib/config/prod.js

在 vue.config.js 中的 configureWebpack 选项提供一个对象会被 webpack-merge 合并入最终的 webpack 配置,vue.config.js配置如下:

configureWebpack: config => {
    if (process.env.NODE_ENV === 'production') {
        config.optimization.minimizer[0].options.terserOptions.compress.warnings = false;
        config.optimization.minimizer[0].options.terserOptions.compress.drop_console = true;
        config.optimization.minimizer[0].options.terserOptions.compress.drop_debugger = true;
        config.optimization.minimizer[0].options.terserOptions.compress.pure_funcs = ['console.log'];
    }
  }

ps:

1.terser-webpack-plugin是@vue/cli-service的依赖包之一,所以不需要再次安装;

2.相关代码设置放在配置代码顶部

3.compress相关设置参考:https://github.com/terser/terser#compress-options

你可能感兴趣的:(vue)