关于axios前端在接收php后端返回值时Response.data里有额外上一个接口的返回值下一个接口用到?

因axios返回值是异步操作,获取返回值时,请求操作还未完成,就已经执行了赋值,导致结果位undefined。错误示例如下:function GetData(){
let data;
axios.get(请求地址, { params: param }).then(res => {
data = JSON.stringify(res.data.rows);
}).catch(err => {
console.log(err);
});
return data;
}
const data=GetData();
2.解决方法使用async….await,async声明发放为异步方法,await等待异步操作执行完毕。async function GetData() {
let data;
await axios.get(请求地址, { params: param }).then(res => {
data = JSON.stringify(res.data.rows);
}).catch(err => {
console.log(err);
});
return data;
}
3.异步方法返回值为promise对象,接收时需要通过.then(res=>{})接受,值存在res中。GetData().then(res => {
console.log(res);
});
如有转载请注明来源,洋葱先生(http://www.dreamload.cn/blog/?p=922)}

我要回帖

更多关于 上一个接口的返回值下一个接口用到 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信