为了账号安全,请及时绑定邮箱和手机立即绑定

在线等,挺急的!axios怎么实现同步机制感激不尽

在线等,挺急的!axios怎么实现同步机制感激不尽

有只小跳蛙 2019-08-09 23:50:03
asyncfunctiongetList(){returnawaitaxios({method:'post',url:'/list/tododata/',data:json}).then(res=>{returnaxios.get('/list/tododata',{params:{'page':newState.current,}}).then((res)=>{constdata=res.data;returndata.results//想获取这个东西}).catch((error)=>{console.log(error);});}).catch((err)=>{console.log(err);});}getList().then(value=>{newState.list=value})returnnewStateasync返回的还是一个Promise,获取Promise的值还是异步的,以至于最后return的newSate还是没有被更新,请问想要获取最新的newState该怎么改?
查看完整描述

2 回答

?
温温酱

TA贡献1752条经验 获得超4个赞

asyncfunctiongetList(){
awaitaxios({
method:'post',
url:'/list/tododata/',
data:json
}).catch((error)=>{
console.log(error);
});
constresults=awaitaxios.get('/list/tododata',{
params:{
'page':newState.current,
}
}).then((res)=>{
constdata=res.data;
returndata.results;
}).catch((error)=>{
console.log(error);
});
returnresults;
}
                            
查看完整回答
反对 回复 2019-08-09
?
吃鸡游戏

TA贡献1829条经验 获得超7个赞

functionpostTododata(){
returnnewPromise((resolve,reject)=>{
axios({
method:'post',
url:'/list/tododata/',
data:json
}).then(res=>{
resolve(res.data);
})
})
}
functiongetTododata(){
returnnewPromise((resolve,reject)=>{
axios({
method:'get',
url:'/list/tododata/',
params:{
'page':newState.current,
}
}).then(res=>{
resolve(res.data);
})
})
}
asyncfunctiongetList(){
awaitpostTododata();
newState.list=awaitgetTododata();
}
getList();
                            
查看完整回答
反对 回复 2019-08-09
  • 2 回答
  • 0 关注
  • 408 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信