起因:
要在项目中嵌入鹅厂的TRTC组件。前端引入TRTC之后,使用npm run build编译报错。
原因:
资料地址:https://www.jason-z.com/post/uglifyjs-unexpected-token-name
网上搜了一圈,说是UglifyJs无法解析ES6的语法,引入的组件里包含了ES6.
解决:
在项目的build\webpack.base.conf.js 文件中,在入下图所示位置加入对指定组件的处理,重新编译,就不报错了。
另:
记录在此次解决过程中学习到的知识点!
带^ 的是指最新版本,不带的是指 指定版本
2020-09-16更新
以上的方法可能有用,不过应该是针对于某些组件来说。但是针对于本次的TRTC来说,以上的方法无法解决,使用了之后TRTC无法引入,页面报错,undefined。
提供另一种解决方案:
这是原本按照官方文档里提供的使用方案操作下载的TRTC包
前端API文档地址:https://trtc-1252463788.file.myqcloud.com/web/docs/TRTC.html
小程序API文档地址:https://cloud.tencent.com/document/product/647/17018
桌面浏览器版demo地址:https://cloud.tencent.com/document/product/647/32398
1,先将trtc.js文件提取出来,放置项目某一目录
2,先在项目里卸载trtc:执行 npm uninstall trtc-js-sdk
3,在vue项目的index.html里引入trtc.js
4,在要使用TRTC的页面直接使用即可。
本文针对于我的项目中使用trtc导致的UglifyJs Unexpected token name提供解决方案,在实际的其他项目中,可能有其他的组件也会有类似情况,在此只是以此组件作为案例提供解决思路,具体情况请具体分析。
不积跬步,无以至千里。