vue+axios?methods方法return取不到值問(wèn)題及解決
vue+axios methods方法return取不到值
vue寫了一個(gè)判斷電話號(hào)碼是否存在的方法無(wú)法取到返回值

原因
因?yàn)閍xios是異步操作,在獲取返回值時(shí)請(qǐng)求操作還沒(méi)有完成就已經(jīng)完成了賦值操作,所以結(jié)果的undefined。
解決方法
使用async + await。async聲明方法為異步方法,await等待異步操作執(zhí)行完。

另外: 異步方法返回值為peomise<>,接收時(shí)需要.then(res=>{})

vue返回axios的return值,很容易u(yù)ndefined
獲取axios的return值
1.如果直接在.then里return,得到的值就是undefined,如下
map(){
?? ?let a=[]
?? ?mapChina().then(res=>{?? ?//調(diào)用axios自己封裝的接口
?? ??? ?a=res?
?? ?})
?? ?return a
}
const b=this.map()?? ??? ?//結(jié)果是undefined因axios返回值是異步操作,獲取返回值時(shí),請(qǐng)求操作還未完成,就已經(jīng)執(zhí)行了賦值,導(dǎo)致結(jié)果位undefined
2.解決方法使用async….await,async聲明發(fā)放為異步方法,await等待異步操作執(zhí)行完畢
async map(){
?? ?let a=[]
?? ?await mapChina().then(res=>{?? ?//調(diào)用axios自己封裝的接口
?? ??? ?a=res?
?? ?})
?? ?return a
}
const b=await this.map() ?? ??? ?//結(jié)果正確返回a以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
VueCLI通過(guò)process.env配置環(huán)境變量的實(shí)現(xiàn)
本文主要介紹了VueCLI通過(guò)process.env配置環(huán)境變量的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07
Vue通過(guò)懶加載提升頁(yè)面響應(yīng)速度
這篇文章主要介紹了Vue通過(guò)懶加載提升頁(yè)面響應(yīng)速度,對(duì)Vue性能感興趣的同學(xué),可以參考下2021-05-05
解決vue ui報(bào)錯(cuò)Couldn‘t parse bundle asset“C:
這篇文章主要介紹了解決vue ui報(bào)錯(cuò)Couldn‘t parse bundle asset“C:\Users\Administrator\vue_project1\dist\js\about.js“. Analyzer問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-04-04
vue+elementUI動(dòng)態(tài)增加表單項(xiàng)并添加驗(yàn)證的代碼詳解
這篇文章主要介紹了vue+elementUI動(dòng)態(tài)增加表單項(xiàng)并添加驗(yàn)證的代碼,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-12-12
Vue中使用ElementUI使用第三方圖標(biāo)庫(kù)iconfont的示例
這篇文章主要介紹了Vue中使用ElementUI使用第三方圖標(biāo)庫(kù)iconfont的示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-10-10

