五, Vueのvue-cli2和vue-cli3生产环境去掉console.log

在开发环境写了很多console.log/info/debug,在生产环境需要去掉这些console。如果手动删除未免也太累了,再说以后想再开发还得重新写console。webpack提供了删除console的插件,这里分两种:

vue-cli2 生成环境去除console.log

1. 项目build 下面webpack.prod.config.js 文件中:

plugins: [
    new webpack.DefinePlugin({
      'process.env': env
    }),
    new UglifyJsPlugin({
      uglifyOptions: {
        compress: {
          warnings: false,
          //drop_console  传递true以放弃对控制台的调用。*功能
          drop_console: true,
          // pure_funces 禁用console.log函数
          pure_funcs: ['console.log']
        }
      },
      sourceMap: config.build.productionSourceMap,
      parallel: true
    }),
     
    ......
]

注意:搜索plugins 这个下面,UglifyJsPlugin 默认已经安装了,只需要添加 drop_console: true, pure_funcs: ['console.log']

代码参照如上即可, 我就是这样添加的.

vue-cli3 生成环境去除console.log

1. 只有vue.config.js 里配置.

const UglifyJsPlugin = require('uglifyjs-webpack-plugin');

configureWebpack: {
        //注释console
        optimization: {
            minimizer: [
                new UglifyJsPlugin({
                    uglifyOptions: {
                        compress: {
                            // warnings: false,
                            drop_console: false, //注释console
                            drop_debugger: false,
                            pure_funcs: ['console.log'] //移除console
                        }
                    }
                })
            ]
        }

 }

2. 需先安装 uglifyjs-webpack-plugin 插件

npm install uglifyjs-webpack-plugin --save-dev

注意: npm run build 打包报错,提示UglifyJs Unexpected token: keyword «const» ......

UglifyJs当前的版本不支持es6的写法,其中一种解决的办法就是升级更新UglifyJs的版本

npm i uglifyjs-webpack-plugin@1

如果提示出错可以改用淘宝镜像来安装

cnpm i uglifyjs-webpack-plugin@1

安装好之后就可以使用npm run build

以上配置就这么多,如果还有问题,可以加入扣扣群:316567839

 

  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值