javascript - 微信小程序封裝定位問題(封裝異步并可能多次請(qǐng)求)
問題描述

當(dāng)首次成功定位或者定位失敗點(diǎn)擊取消按鈕是沒有問題,能接收到then里面的回調(diào)或者是取消定位catch里面的函數(shù),但定位失敗點(diǎn)擊重新定位進(jìn)行對(duì)getLocation進(jìn)行重新調(diào)用,是會(huì)重新new promise的,但這時(shí)的resolve或者reject就不能成功了,報(bào)錯(cuò)提示

這個(gè)意思是沒有catch做首次請(qǐng)求的錯(cuò)誤處理嗎?這時(shí)候我就把他修改為

讓他先處理完錯(cuò)誤再重新調(diào)用,這時(shí)不執(zhí)行catch里面的方法。請(qǐng)問該怎么處理。讓第二次執(zhí)行resolve或者reject
跟這種雖然不是異步,但實(shí)現(xiàn)原理跟性質(zhì)好像一樣,這樣又是可以返回第二次的resolve或者reject


問題解答
回答1:看代碼,感覺是因?yàn)槟愕牡谝粋€(gè)promise沒有進(jìn)行決議,然后通過調(diào)用getLocation()又開始啟用了另一個(gè)promise,所以會(huì)報(bào)錯(cuò)吧。我理解的你要實(shí)現(xiàn)的就是在promise中要遞歸的調(diào)用自身。你可以搜搜promise遞歸調(diào)用相關(guān)問題。
相關(guān)文章:
1. 關(guān)docker hub上有些鏡像的tag被標(biāo)記““This image has vulnerabilities””2. docker-compose中volumes的問題3. boot2docker無法啟動(dòng)4. docker安裝后出現(xiàn)Cannot connect to the Docker daemon.5. nignx - docker內(nèi)nginx 80端口被占用6. dockerfile - 為什么docker容器啟動(dòng)不了?7. node.js - antdesign怎么集合react-redux對(duì)input控件進(jìn)行初始化賦值8. docker容器呢SSH為什么連不通呢?9. java - SSH框架中寫分頁(yè)時(shí)service層中不能注入分頁(yè)類10. 關(guān)于docker下的nginx壓力測(cè)試

網(wǎng)公網(wǎng)安備