axios在ie下的兼容性问题 vue webpack es6-promise

今天在测试vue项目时,运行环境在ie9,10,11环境下发现axios存在兼容性问题,当时第一时间百度了解决方法,但是还是依旧没有解决,不清楚是不是我解决的方法有问题还是存在其他问题,求技术大牛帮忙解决???

这是我找到的解决方案:(但并未解决我的问题,不知是不是我使用方式的问题,求解)
https://segmentfault.com/q/10…

clipboard.png

clipboard.png

回答:

今天被这个问题卡了蛮久,最后es6-promise装上了也没解决。浏览器调试看到后端明明正确返回了数据,但是axios的回调中的response就是没有data字段(╥╯^╰╥),最后把responseType: ‘json’这个配置相干掉竟然成功了
// axios异步请求接口统一配置
util.ajax = axios.create({

baseURL: Api.baseURL,
timeout: 30000
// responseType: 'json' // default IE不支持该配置项,启用后返回的数据将没有data字段

});

回答:

先在命令行 npm install es6-promise –save-dev
安装好后
import promise from ‘es6-promise’;
promise.polyfill();

回答:

今天通过不断的编译测试,终于发现了问题所在,axios官方宣称支持ie9以上 为何我ie9,10,11都无法支持。
原因在于axios的config配置文件中,我所使用的config是拷贝网上现有的配置文件,其中配置的一些回调方法,在ie中并未兼容,所以导致axios在ie中返回值无法正常处理。
问题总结:

1.使用人家的config中,别一味盲目的copy,最好能够去理解每一行配置内容,从而避免报错。
2.配置内容过程中最好根据项目所需进行配置,将无用的配置项注释或者删除,从未也避免报错。

表达能力有限,如还有不懂的朋友可以评论留言

暂无评论

发表评论

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