vue 解决uglifyjs-webpack-plugin打包出现报错的问题


Posted in Javascript onAugust 04, 2020

楼主最新对已做项目进行打包优化,配置了打包环境下去除console.log语句插件---使用uglifyjs-webpack-plugin

具体代码如下

npm install uglifyjs-webpack-plugin -D
const UglifyJsPlugin = require('uglifyjs-webpack-plugin')

configureWebpack: config => {
    if (isProduction) {
      config.plugins = config.plugins.concat(
        [
          new UglifyJsPlugin({
            uglifyOptions: {
              compress: {
                warnings: false,
                drop_debugger: true,
                drop_console: true,
              },
            },
            sourceMap: false,
            parallel: true,
          })

        ]
      )
    }

然后打包发现报错

vue 解决uglifyjs-webpack-plugin打包出现报错的问题

⠧ Building for production...

 ERROR Failed to compile with 1 errors                                                     上午10:10:12

 error

assets/js/about.e1f1ea37.js from UglifyJs
Unexpected token: keyword (const) [assets/js/about.e1f1ea37.js:13062,0]

 ERROR Build failed with errors.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! thua@0.1.0 build: `vue-cli-service build --mode production`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the thua@0.1.0 build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!   /Users/chenya/.npm/_logs/2019-01-15T02_10_12_281Z-debug.log

把new UglifyJsPlugin插件注释掉即可成功打包。

但是,楼主我一点都不乐意,凭啥不让我用UglifyJsPlugin插件!

于是不求人的我开始上网查资料,搜索Unexpected token: keyword (const),搜索列表点第一个进去看,大致说是因为项目有的文件没有es6转es5,即还存在const变量名。

????(黑人问号)。我的vue配置是自动用babel把es6转es5的呀,搞锤子呢。

于是脑洞回想一下,是不是哪里有文件打包进去没有用到babel???

咦。。。。。。。是不是,。。那个。。。。node_modules下的依赖。。。。。

再仔细想想,看看代码。。。。。有一个animejs(用于动效)、还有一个vue-particles (canvas用于登录页背景特效)

找到问题了,下一步就是如何显示的把node_modules下的依赖用babel 转译。

楼主用的vue-cli3脚手架,翻山越岭的查找vue-cli3的官方资料,终于找到你。。。。。

transpileDependencies

transpileDependencies

Type: Array<string | RegExp>

Default: []

默认情况下 babel-loader 会忽略所有 node_modules 中的文件。如果你想要通过 Babel 显式转译一个依赖,可以在这个选项中列出来。

还好我没放弃~~~~

transpiledependencies参数接受一个数组,数组里可以是字符串也可以正则表达式。

附上楼主的配置

transpileDependencies: [
    'vue-particles',
    'animejs'
  ],

完美解决~

vue 解决uglifyjs-webpack-plugin打包出现报错的问题

开开心心下班回家~~~~~

2020年06月11日08:57:07 更新

楼主已弃用 uglifyjs-webpack-plugin 插件啦。现在用的是 terser-webpack-plugin

vue 解决uglifyjs-webpack-plugin打包出现报错的问题

以上这篇vue 解决uglifyjs-webpack-plugin打包出现报错的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js前台分页显示后端JAVA数据响应
Mar 18 Javascript
原生JS实现风箱式demo,并封装了一个运动框架(实例代码)
Jul 22 Javascript
JS创建对象的写法示例
Nov 04 Javascript
详解vue2.0 不同屏幕适配及px与rem转换问题
Feb 23 Javascript
浅析Vue.js 中的条件渲染指令
Nov 19 Javascript
详解Vue-axios 设置请求头问题
Dec 06 Javascript
vue项目中mock.js的使用及基本用法
May 22 Javascript
express框架中使用jwt实现验证的方法
Aug 25 Javascript
Layui表格行工具事件与数据回填方法
Sep 13 Javascript
vue组件 keep-alive 和 transition 使用详解
Oct 11 Javascript
js实现图片实时时钟
Jan 15 Javascript
vue使用transition组件动画效果的实例代码
Jan 28 Vue.js
浅谈在vue-cli3项目中解决动态引入图片img404的问题
Aug 04 #Javascript
解决vuecli3中img src 的引入问题
Aug 04 #Javascript
简介JavaScript错误处理机制
Aug 04 #Javascript
vue 出现data-v-xxx的原因及解决
Aug 04 #Javascript
elementui更改el-dialog关闭按钮的图标d的示例代码
Aug 04 #Javascript
vue 实现根据data中的属性值来设置不同的样式
Aug 04 #Javascript
解决Vue中使用keepAlive不缓存问题
Aug 04 #Javascript
You might like
thinkPHP5.0框架开发规范简介
2017/03/25 PHP
js正确获取元素样式详解
2009/08/07 Javascript
Jquery AJAX 用于计算点击率(统计)
2010/06/30 Javascript
基于jQuery的星级评分插件
2011/08/12 Javascript
关闭浏览器时提示onbeforeunload事件
2013/12/25 Javascript
用jQuery与JSONP轻松解决跨域访问的问题
2014/02/04 Javascript
js获取隐藏元素宽高的实现方法
2016/05/19 Javascript
浅析jquery数组删除指定元素的方法:grep()
2016/05/19 Javascript
js简单时间比较的方法
2016/08/02 Javascript
用headjs来管理和加载js 提高网站加载速度
2016/11/29 Javascript
详解用webpack的CommonsChunkPlugin提取公共代码的3种方式
2017/11/09 Javascript
用POSTMAN发送JSON格式的POST请求示例
2018/09/04 Javascript
JavaScript 判断iPhone X Series机型的方法
2019/01/28 Javascript
js中的面向对象之对象常见创建方法详解
2019/12/16 Javascript
JS函数进阶之继承用法实例分析
2020/01/15 Javascript
es6数组之扩展运算符操作实例分析
2020/04/25 Javascript
JS轮播图的实现方法2
2020/08/25 Javascript
[06:38]DOTA2怒掀电竞风暴 2013Chinajoy
2013/07/27 DOTA
[06:07]DOTA2-DPC中国联赛3月5日Recap集锦
2021/03/11 DOTA
微信跳一跳游戏python脚本
2020/04/01 Python
python实现浪漫的烟花秀
2019/01/30 Python
python删除列表元素的三种方法(remove,pop,del)
2019/07/22 Python
python如何遍历指定路径下所有文件(按按照时间区间检索)
2020/09/14 Python
美国的Eastbay旗下的运动款子品牌:Final-Score
2018/01/01 全球购物
您附近的水疗和健康场所:Spafinder(美国)
2019/07/05 全球购物
全球烹饪课程的领先预订平台:Cookly
2020/01/28 全球购物
中秋节礼品促销方案
2014/02/02 职场文书
节约用水标语
2014/06/11 职场文书
材料成型及控制工程专业求职信
2014/06/19 职场文书
学生检讨书怎么写?
2014/10/10 职场文书
给老婆的检讨书1000字
2015/01/01 职场文书
英语复习计划
2015/01/19 职场文书
感恩母亲节活动总结
2015/02/10 职场文书
《生物入侵者》教学反思
2016/02/16 职场文书
Vue的生命周期一起来看看
2022/02/24 Vue.js
Golang 结构体数据集合
2022/04/22 Golang