这是半路接手的项目 头疼哎 ! 在IE11 SCRIPT1003: 缺少 ':' chunk-vendors.js (12120,33991) ,试过了一些网上查找的方法都不可行,求大神解答
使用vue脚手架搭建的项目build后chunk-vendors.js文件存在es6语法
1.vue打包是不会编译node_modules中的代码,如果代码中存在node_modules中的引用,build后就会直接合并代码,不会被babel解析。
2.那么根源找到了,你要先找到node_modules中哪个包或者代码没有被babel,然后在webpack.base.conf.js 的 babel-loader中把这个包加入include就可以被babel解析了。
代码如下:
module: {
rules: [
{
test: /\.js$/,
loader: "babel-loader",
include: [
resolve("src"),
resolve("test"),
resolve("node_modules/webpack-dev-server/client"),
resolve("node_modules/webpack/lib/ModuleFilenameHelpers.js")
]
},
]
}
这样发出来 无法排查
你的配置项出问题了吧。把json格式里的: 写成了= 例如 {name=“1”} 应该是{name:""} 这问题是多典型呀。
报错哪一行,贴出来
不完整
不用eval看看报错哪一行
是vue项目吗看看有没有可能是method定义用了es6 方式,比如:a:fucntion(){} 而现在是a(){}
方案2
手动修改所有函数
首先要知道,IE不支持函数简写(函数名称())
data(){ return {} }//不支持
只能识别这种形式(函数名称:function ())
data: function () { return {} }//支持
方案3
看下配置文件package.json
中设置的兼容浏览器配置
"browserslist": [ "> 1%", "last 2 versions" ]//看看支持的浏览器类型
应该是这个问题
引入下proxy.min.js
查询一下配置所代表的的浏览器, 可以发现IE10
和IE11
都在其列,