最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
當(dāng)前位置: 首頁 - 科技 - 知識(shí)百科 - 正文

深入理解ES6 Promise 擴(kuò)展always方法

來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 22:29:02
文檔

深入理解ES6 Promise 擴(kuò)展always方法

深入理解ES6 Promise 擴(kuò)展always方法:ES6添加了Promise對(duì)象,成功時(shí)在then中處理,失敗則在catch中處理,但有時(shí)候,我們需要在無論成功或失敗時(shí)都要做一些事,比如隱藏loading, 記錄日志等等,下面我們以瀏覽器端ajax請(qǐng)求為例,我們使用axios(它是基于Promise的): axios.get
推薦度:
導(dǎo)讀深入理解ES6 Promise 擴(kuò)展always方法:ES6添加了Promise對(duì)象,成功時(shí)在then中處理,失敗則在catch中處理,但有時(shí)候,我們需要在無論成功或失敗時(shí)都要做一些事,比如隱藏loading, 記錄日志等等,下面我們以瀏覽器端ajax請(qǐng)求為例,我們使用axios(它是基于Promise的): axios.get

ES6添加了Promise對(duì)象,成功時(shí)在then中處理,失敗則在catch中處理,但有時(shí)候,我們需要在無論成功或失敗時(shí)都要做一些事,比如隱藏loading, 記錄日志等等,下面我們以瀏覽器端ajax請(qǐng)求為例,我們使用axios(它是基于Promise的):

axios.get("/").then(()=>{
 //處理邏輯
 ...
 console.log("請(qǐng)求結(jié)束")
 hideLoading();
}).catch(()=>{
 console.log("請(qǐng)求結(jié)束")
 hideLoading();
})

這樣的代碼, 很冗余。每到這個(gè)時(shí)候都有點(diǎn)懷念jQuery:

$.get("/").done(()=>{
 //處理邏輯
}).always(()=>{
 console.log("請(qǐng)求結(jié)束")
 hideLoading();
})

es6-promise-always正是對(duì)ES6的功能做了一個(gè)擴(kuò)充,使其支持always,并同時(shí)支持node和browser.

使用

1.安裝

npm install es6-promise-always --save

2.引入使用

require("es6-promise-always")
axios.get("/").then(()=>{
 //處理邏輯
}).always(()=>{
 console.log("請(qǐng)求結(jié)束")
 hideLoading();
})

always(data, error)

  • data: resolve的數(shù)據(jù)。
  • error: reject的數(shù)據(jù)。
  • Tips

    不要擔(dān)心這個(gè)會(huì)讓你的程序變胖!es6-promise-always非常小。剛開始實(shí)現(xiàn)時(shí)always時(shí),走錯(cuò)了方向,辛好迷途知返。github地址:https://github.com/wendux/es6-promise-always

    聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    深入理解ES6 Promise 擴(kuò)展always方法

    深入理解ES6 Promise 擴(kuò)展always方法:ES6添加了Promise對(duì)象,成功時(shí)在then中處理,失敗則在catch中處理,但有時(shí)候,我們需要在無論成功或失敗時(shí)都要做一些事,比如隱藏loading, 記錄日志等等,下面我們以瀏覽器端ajax請(qǐng)求為例,我們使用axios(它是基于Promise的): axios.get
    推薦度:
    標(biāo)簽: promise ES6 prom
    • 熱門焦點(diǎn)

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top