Vue Cli3 打包配置并自动忽略console.log语句的方法


Posted in Javascript onApril 23, 2020

下载插件

npm i -D uglifyjs-webpack-plugin

在 vue.config.js 引入使用

const UglifyJsPlugin = require('uglifyjs-webpack-plugin')
module.exports = {
 configureWebpack: {
  plugins: [
   new UglifyJsPlugin({
    uglifyOptions: {
     compress: {
      drop_console: true,
     },
    },
   }),
  ],
 },
 devServer: {
  proxy: {
   '/xxx': {
    target: 'http://192.168.150.17:8080/',
    changeOrigin: true,
    ws: true,
    pathRewrite: {
     '^/xxx': 'xxx',
    },
   },
  },
 },
 publicPath: './',
}

这时执行 npm run build 打包后的文件就没有 console.log 语句了。

不过这时会有一个问题,就是在开发环境的时候编译会非常慢。例如修改了一个变量的值,我的电脑要编译 10 秒才能重新刷出来页面,一直卡在 92% chunk asset optimization

由于去掉 console.log 语句这个功能只有在打包时才需要,所以我们可以加一个判断,只在生产环境时才把上述配置代码加上。

所以正确的配置如下:

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

const config = {
 devServer: {
  proxy: {
   '/xxx': {
    target: 'http://192.168.150.17:8080/',
    changeOrigin: true,
    ws: true,
    pathRewrite: {
     '^/xxx': 'xxx',
    },
   },
  },
 },
 publicPath: './',
}

if (process.env.NODE_ENV === 'production') {
 config.configureWebpack = {
  plugins: [
   new UglifyJsPlugin({
    uglifyOptions: {
     compress: {
      drop_console: true,
     },
    },
   }),
  ],
 }
}

module.exports = config

vue-cli3.0 生产包去除console.log

不安装插件去除console.log的方法

vue-cli3.0在打包过程中就使用了terser-webpack-plugin插件进行优化,具体配置可以node_modules/@vue/cli-service/lib/config/prod.js中看到。

这里使用了环境变量进行控制,只有打生产包的时候才会调用这个插件进行打包优化。

terser-webpack-plugin的具体配置在同一个文件夹下terserOptions.js中,只要在这个文件中compress对象中加入以下几个属性就可以了

warnings: false,
drop_console: true,
drop_debugger: true,
pure_funcs: ['console.log']

到此这篇关于Vue Cli3 打包配置并自动忽略console.log语句的方法的文章就介绍到这了,更多相关Vue Cli3打包并忽略console.log内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
wordpress之js库集合研究介绍
Aug 17 Javascript
使用IE6看老赵的博客 jQuery初探
Jan 17 Javascript
jQuery学习笔记之jQuery的动画
Dec 22 Javascript
window.onload追加函数使用示例
Mar 03 Javascript
JavaScript实现按Ctrl键打开新页面
Sep 04 Javascript
js+html5绘制图片到canvas的方法
Jun 05 Javascript
js 动态添加元素(div、li、img等)及设置属性的方法
Jul 19 Javascript
写给小白看的JavaScript异步
Nov 29 Javascript
超出JavaScript安全整数限制的数字计算BigInt详解
Jun 24 Javascript
Vue Router去掉url中默认的锚点#
Aug 01 Javascript
原生js实现拖拽移动与缩放效果
Aug 24 Javascript
Vue中 axios delete请求参数操作
Aug 25 Javascript
vue项目打包之开发环境和部署环境的实现
Apr 23 #Javascript
javascript设计模式 ? 模板方法模式原理与用法实例分析
Apr 23 #Javascript
谈谈我在vue-cli3中用预渲染遇到的坑
Apr 22 #Javascript
如何修改Vue打包后文件的接口地址配置的方法
Apr 22 #Javascript
nuxt+axios实现打包后动态修改请求地址的方法
Apr 22 #Javascript
JS脚本实现定时到网站上签到/签退功能
Apr 22 #Javascript
微信小程序实现手指拖动选项排序
Apr 22 #Javascript
You might like
Oracle 常见问题解答
2006/10/09 PHP
网站加速 PHP 缓冲的免费实现方法
2006/10/09 PHP
echo, print, printf 和 sprintf 区别
2006/12/06 PHP
采用PHP函数memory_get_usage获取PHP内存清耗量的方法
2011/12/06 PHP
PHP实现适用于自定义的验证码类
2016/06/15 PHP
怎么让脚本或里面的函数在所有图片都载入完毕的时候执行
2006/10/17 Javascript
JQuery的html(data)方法与<script>脚本块的解决方法
2010/03/09 Javascript
复选框全选与全不选操作实现思路
2013/08/18 Javascript
js中的referrer返回上一页使用介绍
2013/09/26 Javascript
js+canvas简单绘制圆圈的方法
2016/01/28 Javascript
jQuery简单验证上传文件大小及类型的方法
2016/06/02 Javascript
AngularJs bootstrap详解及示例代码
2016/09/01 Javascript
jQuery删除节点用法示例(remove方法)
2016/09/08 Javascript
Node.js测试中的Mock文件系统详解
2016/11/21 Javascript
Dropzone.js实现文件拖拽上传功能(附源码下载)
2016/11/22 Javascript
详解Jquery的事件操作和文档操作
2016/12/19 Javascript
JS使用正则截取两个字符串之间的字符串实现方法详解
2017/01/06 Javascript
解决layer图标icon不加载的问题
2019/09/04 Javascript
高效jQuery选择器的5个技巧实例分析
2019/11/26 jQuery
Javascript异步编程async实现过程详解
2020/04/02 Javascript
JS实现京东商品分类侧边栏
2020/12/11 Javascript
Python中Collections模块的Counter容器类使用教程
2016/05/31 Python
Python随机数用法实例详解【基于random模块】
2017/04/18 Python
python中的内置函数max()和min()及mas()函数的高级用法
2018/03/29 Python
python实现从文件中读取数据并绘制成 x y 轴图形的方法
2018/10/14 Python
python Elasticsearch索引建立和数据的上传详解
2019/08/04 Python
如何在VSCode上轻松舒适的配置Python的方法步骤
2019/10/28 Python
python重要函数eval多种用法解析
2020/01/14 Python
Python如何实现线程间通信
2020/07/30 Python
python des,aes,rsa加解密的实现
2021/01/16 Python
HTML5几个设计和修改的页面范例分享
2015/09/29 HTML / CSS
介绍一下Make? 为什么使用make
2013/12/08 面试题
广告语设计及教案
2014/03/21 职场文书
检讨书范文2000字
2015/01/28 职场文书
淡雅古典唯美少女娇媚宁静迷人写真
2022/03/21 杂记
Win11 22H2 2022怎么更新? 获得Win1122H22022版本升级技巧
2022/09/23 数码科技