.finally is not a function —— 解決低版本瀏覽器axios不支援finally

小謳發表於2018-07-06

框架專案用axios呼叫介面時,我們常用:

介面名().then(result=>{
    do sth...
}).catch(()=>{
    do sth...
}).finally(()=>{
    do sth...
})

卻會遇到這個問題:

fName(...).then(...).catch(...).finally is not a function
造成此問題的原因為:瀏覽器版本太低

除了升級最新版瀏覽器(火狐甚至升級後還報錯),解決辦法如下:

安裝 promise.prototype.finally 包
npm i promise.prototype.finally

最後記得在 main.js 裡引入該依賴包:

require(`promise.prototype.finally`).shim();

相關文章