猿问

请问!vue项目axios请求使用async解决异步问题

有两个方法:一个是handleGetTable(id){letpa={id:id};api.getTable(pa).then(res=>{if(res.data.code===200){returnnewPromise((resolve,reject)=>{resolve(res.data.data)})}})},其中api.getTable是axios的集中管理的一个请求;现在想在另一个方法中等待此方法返回结果之后再发送请求asyncgetSqlSentence(id){//工单IDletpa={id:id};lets=awaitthis.handleGetTable(id);console.log(s,'ssssssssssss')kursk.getSqlSentence(pa).then(res=>{if(res.data.code===200){}})},但是上面的写法好像行不通?请求应该怎么使用async方法?


牛魔王的故事
浏览 582回答 2
2回答

慕姐8265434

handleGetTable(id){letpa={id:id};newPromise((resolve,reject)=>{api.getTable(pa).then(res=>{if(res.data.code===200){returnresolve(res.data.data)}})})},这样就好了~~~

莫回无

api.getTable(pa)的返回就是一个promise所以你可以直接调用asyncgetSqlSentence(){constres1=awaitapi.getTable(pa)constres2=kursk.getSqlSentence(pa).then(res=>{if(res.data.code===200){}})}code是不是200的判断你可以在interceptor里做
随时随地看视频慕课网APP
我要回答