解决vue中使用Axios调用接口时出现的ie数据处理问题

1.问题

近期在使用vue2 + axios 调用接口时碰到一个IE中很奇葩的问题,让我头痛了很久。

废话不多扯,就是在其他浏览器中调用接口返回数据然后可以很顺利的进行处理,但在IE(9-11)中发现发送请求是成功的而且也能抓到服务端返回来的数据。却发现在处理返回来的数据的时候处理的有点问题,怎么搞就是不行。

2.处理过程及方法

我使用了console大法去解决这个问题,具体是这样的:我先将服务器返回过来的数据打印到浏览器控制台,结果发现都能打印出来,这个时候就郁闷了,明明有数据为何在IE上还是不行呢,于是我用typeOf 来查看返回数据的类型发现axios在IE时处理的返回数据居然是string类型。这下解决方法就出来了。

var newData;

if (typeOf data === 'string') {

newData = JSON.parse(data)

} else {

 newData = data

}

然后对newData进行处理就能解决了。

相关推荐