vue-resource 在IE9下报promise 语法错误

使用vue-cli 采用vue2.0,vuex,vue-resource,vue-router,elementUI构建的项目,在IE10,IE11,谷歌,火狐,搜狗浏览器都正常,可以获取到数据。
但是在IE9下报错(编译热加载阶段和打包后都报错),使用vue-resource promise,报错:Unhandled promise rejection SyntaxError: 语法错误

// 报错文件
import serviceLogin from 'URL_service/login';
// 使用vue-resource 调接口
serviceLogin.login(that.dataLogin).then((res) => {
    ···
    console.log('登录接口返回数据', res);
    ···
});

有搜索一些解决方案,尝试安装npm install 安装过
es6-promise, es6-promise-polyfill, 都无效,在IE9下仍然报同样的错误。

// main.js
import Vue from 'vue';
import 'babel-polyfill';
// 加入promise以支持IE9
// import {Promise} from 'es6-promise';
import {Promise} from 'es6-promise-polyfill';
// Promise();
// import 'es6-promise/auto';
// ElementUI 公共库引入
import ElementUI from 'element-ui';
// webpack.base.conf.js
module.exports = {
  entry: {
    // app: './src/main.js'
    app: ['babel-polyfill', './src/main.js'],
    vendor: ['vue', 'vue-resource', 'vue-router', 'vuex'],
    lib: ['element-ui']
  }
  ···
}

主要情况就是这样,困扰了一下午~

先感谢大神的解答~

回答:

https://github.com/pagekit/vu…
看看是不是这个情况

回答:

Unhandled promise rejection

说明 promise 已经成功 polyfill 了,你需要给 promise 加一个 .catch 调用

暂无评论

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注