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']
  }
  ···
}

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

先感谢大神的解答~

阅读 11.7k
3 个回答

Unhandled promise rejection

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

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题