Vue-Cli项目中vue-socketio.js在IE浏览器下报SCRIPT1003: 缺少 ':' ,vue-charts 缺少')'
今天用ie打开了我们的Vue项目,结果一片空白
于是赶紧打开F12一探究竟
9440行,是啥呢,点过去瞅瞅
好吧,去main.js
里把vue-socket.io注释掉
错误信息变成了缺少')'
经排查,是vue-charts导致的这条报错
那么,vue-socket.io和vue-charts就是罪魁祸首了。
重点来了
一般来说这种错误都是ES6的兼容性问题,比如
fun(){}
fun = () => {}
解决办法如下:
//vue.config.js中添加
transpileDependencies: [
'vue-socket.io',
'vue-echarts',
'resize-detector',
],
//babel.config.js(注意双括号)
module.exports = {
presets: [[
'@vue/app',
{
useBuiltIns:'entry'
}
]]
}
重新编译,解决!
附:官方文档
transpileDependencies
Type: Array<string | RegExp>
Default: []
默认情况下 babel-loader 会忽略所有 node_modules 中的文件。
如果你想要通过 Babel 显式转译一个依赖,可以在这个选项中列出来。
关于useBuiltIns请参考此篇文章
按需加载polyfill——babel7的正确打开方式
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。