场景
当我们执行一个promise
操作时,往往伴随的是要做各种状态的修改(如请求开始时显示loading
,结束时隐藏 loading
), 这个状态修改,如果没有finally
函数,我们需要在then
和catch
中都写入这段代码,但是有了finally
函数,我们只需要把这段代码写入函数中即可,因为finally
函数中的逻辑,请求完成之后无论是成功失败都会被执行
getUserInfo()
.then(result=>{
do sth...
}).catch(()=>{
do sth...
}).finally(()=>{
do sth...
})
如何支持
安装包
promise.prototype.finally
npm i promise.prototype.finally -S
使用时引用即可
import axios from "axios";
require("promise.prototype.finally").shim();