Bluebird提供了一个finally方法,无论你的Promise链发生什么情况都会被调用。我觉得这非常方便用于清理目的(如解锁资源、隐藏加载器等)。 在ES6原生的Promise中是否有相当之处?
我对 Promise 还比较新,目前正在使用 Bluebird,但是我有一个场景,不太确定如何最好地处理它。 例如,在 Express 应用程序中,我有一个 Promise 链:repository.Query(getAccountByIdQuery) .catch(func...
我正在使用bluebird,我看到有两种方式将同步函数解析为Promise,但我不理解两种方式之间的区别。它们的堆栈跟踪似乎有点不同,所以它们不仅仅是一个别名,对吗? 那么哪种方式更好呢? 方式Afunction someFunction(someObject) { return ne...
如何正确构造循环以确保以下的 Promise 调用 和链接的 logger.log(res) 在迭代过程中同步运行?(bluebird)db.getUser(email).then(function(res) { logger.log(res); }); // this is a promis...
我正在使用bluebird库,并且需要进行一系列的HTTP请求,并且需要将一些响应数据传递给下一个HTTP请求。我已经建立了一个处理请求的函数,名为callhttp()。它需要一个URL和POST请求的正文(body)。 我是这样调用它的:var payload = '{"Username"...
那么,我希望我的第一级catch处理错误。有没有办法将错误传播到该第一个catch中? 参考代码,目前还不起作用:Promise = require('./framework/libraries/bluebird.js'); function promise() { var pro...
我们正在尝试在Node 7中使用--harmony_async_await,与使用babel转换async/await相比,我们缺少具有长堆栈跟踪能力的选项(http://bluebirdjs.com/docs/api/promise.longstacktraces.html)。 很明显,如果...
我找到一个使用promise的现有库,但它没有使用bluebird。这个库的函数不具备像.map()或.tap()这样的bluebird附加功能。我如何将“普通”或“非bluebird”promise转换为带有bluebird提供的所有额外功能的promise? 我尝试使用Promise.p...
我有一个返回数据的 Promise,我想将其保存在变量中。由于JavaScript是异步的,这是不可能的吗?我需要使用 onResolve 作为回调函数吗? 我是否可以通过某种方式使用它(例如:用 async/await 包装它):const { foo, bar } = Promise.t...