ES6承诺解决回调吗?

ES6承诺解决回调吗?,第1张

ES6承诺解决回调吗?

没有

.always
像jQuery一样的东西吗?

如果没有,我该如何实现?

您可以这样实现

finally
自己的方法:

Promise.prototype.finally = function(cb) {    const res = () => this    const fin = () => Promise.resolve(cb()).then(res)    return this.then(fin, fin);};

或更广泛地讲,将解析信息传递给回调:

Promise.prototype.finally = function(cb) {    const res = () => this    return this.then(value =>        Promise.resolve(cb({state:"fulfilled", value})).then(res)    , reason =>        Promise.resolve(cb({state:"rejected", reason})).then(res)    );};

两者都确保原始解析得以维持(当回调中没有异常时),并确保等待诺言



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5110711.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-17
下一篇 2022-11-17

发表评论

登录后才能评论

评论列表(0条)

保存