国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

vue axios請求成功卻進入catch的原因分析

瀏覽:82日期:2022-11-27 09:44:38

問題:axios返回200狀態碼(即請求成功)卻走進了catch里面

原因:

1.當axios請求完成后走的時then的代碼塊,如果then代碼塊中存在錯誤代碼信息,這時就會進入catch中拋出異常(注意:此時控制臺并不會報錯,因為錯誤被catch捕獲了

2.axios是異步發起,若發起后頁面刷新,那么就會丟失當前進程,導致接收不到。例如 form表單,點擊按鈕提交后,表單會刷新

補充知識:axios用catch的寫法與不使用catch有什么區別?

官網上的寫法:

axios.post(url, data) .then(response => { console.log(response); }) .catch(error => { console.log(error); })

公司項目的寫法:

axios.post(url, data) .then(response => { console.log(response); }, error => { console.log(error); })

之前一直沒有仔細研究過then和catch的寫法,事實上,這個不是 axios catch 的相關 而是關于 new Promise() 的then

阮一峰在 promise 文檔中有介紹。

一般來說,不要在then方法里面定義 Reject 狀態的回調函數(即then的第二個參數),總是使用catch方法。

// badpromise .then(function(data) { // success }, function(err) { // error });// goodpromise .then(function(data) { //cb // success }) .catch(function(err) { // error });

上面代碼中,第二種寫法要好于第一種寫法,理由是第二種寫法可以捕獲前面then方法執行中的錯誤,也更接近同步的寫法(try/catch)。因此,建議總是使用catch方法,而不使用then方法的第二個參數。

公司的寫法無法catch第一個參數的異常。

這樣寫可能容易看懂一些:

axios.post(url, data) .then(response => { //處理邏輯 }, error => { console.log(’接口報錯’); }) .catch(error=>{ console.log(’處理邏輯出錯’); })

axios.post(url, data) .then(response => { //處理邏輯 }) .catch(error=>{ console.log(’接口或處理邏輯出錯’); })

以上這篇vue axios請求成功卻進入catch的原因分析就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: IOS
相關文章:
主站蜘蛛池模板: 国产黄色一级毛片 | 成人看片黄a毛片 | 亚洲精品一 | 亚洲欧美精品国产一区色综合 | 欧美精选欧美极品 | 国产成人精品一区二区三在线观看 | 亚洲欧美日韩在线一区 | 深夜福利视频在线观看免费视频 | 一级毛片免费播放 | 亚洲一级毛片免费观看 | 欧美特黄一级 | 九九九九热精品免费视频 | 亚洲一区二区免费看 | 日韩亚洲天堂 | 图片区偷拍区小说区 | 香蕉久久久久 | 亚洲国产欧美另类 | 精品国产品欧美日产在线 | 在线观看免费视频网站色 | 欧美在线综合视频 | 日本高清一本二本三本如色坊 | 国内国语一级毛片在线视频 | 一级做a爰片久久毛片唾 | 性感美女视频黄.免费网站 性高湖久久久久久久久 | 亚洲国产精品第一区二区 | 三级视频网站在线观看 | 在线视频一区二区日韩国产 | 国内视频一区二区 | 亚洲国产成人影院播放 | 亚洲小视频在线播放 | 玖草资源在线 | 国产欧美一区二区三区久久 | 91国内在线 | 国产成人综合亚洲 | 国产成人精品一区二区三区 | 欧美大片无尺码在线观看 | 亚洲欧美精品中字久久99 | 亚洲综合成人网 | 永久毛片 | 免费视频一区二区三区四区 | 在线国产观看 |