webpack构建问题:
ERROR in static/js/27.1c7a113a22f5d64302f5.js from UglifyJs
Unexpected token: name (has) [static/js/27.1c7a113a22f5d64302f5.js:542,6]
1.项目构建工具版本:
"webpack": "^2.6.1",
2.问题描述:
接手一个老项目,在打包构建时报错:(如下图)
ERROR in static/js/27.1c7a113a22f5d64302f5.js from UglifyJs
Unexpected token: name (has) [static/js/27.1c7a113a22f5d64302f5.js:542,6]
3.解题思路:
问题是什么导致的?
对于陌生问题,先百度了解下,以下这篇文章比较有借鉴意义:
[https://www.codeleading.com/article/75975323194/]:
初步判定:项目引入的依赖更新了,打包解析出错
具体原因:
1.先查看报错位置,根据.map文件查看详情,经排查在组件中引用了mint-ui 懒加载组件Lazyload ,Lazyload 依赖第三方依赖vue-lazyload
2.loaders 过滤了node_modules,但是有依赖需要babel处理,vue-lazyload 用到了es6 let关键字,没有经过babel直接引入,因此解析报错了。
3. mint-ui 懒加载组件引入第三方依赖 vue-lazyload ,本地没有package-lock.json,在安装依赖时,依赖自动更新了小版本号。 vue-lazyload 版本1.3.3在构建时没有报错提示, vue-lazyload 版本1.3.4构建时会有报错提示。
4.如何解决:
将使用新语法的依赖添加到babel解析。