【发布时间】:2022-01-19 15:15:14
【问题描述】:
这里是代码。
function getPromise():Promise<any> {
let p = new Promise<any>((resolve, reject) => {
//some logical
resolve(data);
});
p.finally(()=>{
//I want do something when outside then finished!
console.log("finally hit");
});
return p;
}
function doPromise():void {
a.getPromise().then(data => { console.log("then hit"); });
}
但 finally 在此之前运行。那么在外面之后我该怎么做呢。
我不想在那之后添加finally,因为promise调用了很多地方。所以我想在一个地方做。
【问题讨论】:
-
您不应该返回
p.finally(...)的结果吗? developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/… -
@AluanHaddad 我试过了,return p.finally 调用顺序是resolve->finally->then。
标签: javascript typescript promise