javascript - 生成環(huán)境出現(xiàn)Uncaught (in promise) 錯(cuò)誤
問題描述
本地開發(fā)不會(huì)出現(xiàn)這樣的錯(cuò)誤,但是npm run build后發(fā)到服務(wù)器上出現(xiàn)這樣的錯(cuò)誤
問題解答
回答1:用的是axios發(fā)送http請求嗎?如果是的話
axios.get().then().catch()
記得加上最后的那個(gè).catch()
回答2:之所以出現(xiàn)Uncaught (in promise) 的錯(cuò)誤,最終的原因就是:『你的某個(gè)promise沒有加上catch語句』試著去排查下哪里的寫法不完善。以下內(nèi)容摘自我的博客《Promise使用手冊》
我們都知道, Promise.reject返回了一個(gè)拒絕狀態(tài)的Promise對象. 對于這樣的Promise對象, 如果其后續(xù)then | catch中都沒有聲明onRejected回調(diào), 它將會(huì)拋出一個(gè) “Uncaught (in promise) …”的錯(cuò)誤.
如上圖所示, 原語句是 “Promise.reject(‘返回一個(gè)拒絕狀態(tài)的Promise’);” 其后續(xù)并沒有跟隨任何then | catch語句, 因此它將拋出錯(cuò)誤, 且該錯(cuò)外部的Promise無法捕獲.不僅如此, Promise之間涇渭分明, 內(nèi)部Promise拋出的任何錯(cuò)誤, 外部Promise對象都無法感知并捕獲. 同時(shí), 由于promise是異步的, try catch語句也無法捕獲其錯(cuò)誤.因此養(yǎng)成良好習(xí)慣, promise記得寫上catch.
相關(guān)文章:
1. javascript - vue 怎么渲染自定義組件2. python中如何計(jì)算t分布的值?3. javascript - 單個(gè)頁面執(zhí)行多個(gè)jsonp的ajax請求,如何判斷一個(gè)ajax請求執(zhí)行完畢執(zhí)行再另一個(gè)?4. 請教各位大佬,瀏覽器點(diǎn) 提交實(shí)例為什么沒有反應(yīng)5. javascript - Js 函數(shù)聲明和函數(shù)表達(dá)式6. node.js - nodejs 的sails 框架如何修改ejs的后綴為html7. javascript - 怎么看網(wǎng)站用了什么技術(shù)框架?8. javascript - [MUI 子webview定位]9. javascript - node服務(wù)端渲染的困惑10. mysql - 記得以前在哪里看過一個(gè)估算時(shí)間的網(wǎng)站
