打包遇到的问题

这次项目发布生产遇到打包一直报错:

static/js/chunk-libs.771fb7cb.js from UglifyJs
Unexpected token: punc «,» [static/js/chunk-libs.771fb7cb.js:121736,14]

可在打包dev和uat却遇不到这个问题,度娘说的大都是:

在 UglifyJs 的 github issues #78 找到了这样一个解决方案:由于 UglifyJs 只支持 ES5 而 element-ui 可能引入了一部分 ES6 的写法,所以导致 webpack 打包失败,不过我的是移动端并没有 element-ui 的引入所以并不是一样的问题,

但是我推测问题也是出现UglifyJs 只支持 ES5 ,可错误提示并没有指出问题在哪里出现的,一度忙头苍蝇似的想要把这个版本用到的组件都用babel转换,结果都不行

后来还是要重代码层面分析,生产和uat的打包环境配置区别上来下手,后来发现

configureWebpack: config => {
      // 移除console debugger
      if (productionClear && isProd) {
        config.plugins.push(
          new UglifyJsPlugin({
            uglifyOptions: {
              compress: {
                drop_console: true, // 删除console.*
                pure_funcs: ['console.log'] // 删除console.log
              }
            }
          })
        )
      }
      }
    }
  },
在webpack的configureWebpack配置里面有用isProd判断是否生产的打包,生产打包就 new UglifyJsPlugin处理console的删除,而报错也是UglifyJs的报错注释后打包正常
注意的是本地打包不会出现这个问题,估计也是和打包环境有关系的
posted @   me春天  阅读(318)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
点击右上角即可分享
微信分享提示