我找到了一个使用promises的现有库,但它没有使用bluebird.库函数没有蓝鸟喜欢的.map().tap()的所有额外功能.我如何将一个"正常"或"非蓝鸟"的promise 转化为蓝鸟promise ,以及蓝鸟提供的所有额外功能?

我试着在Promise.promisifyPromise.resolve中包装现有的promise ,但两个都不起作用.

推荐答案

使用Promise.resolve——它将接受任何thenable,就像来自其他实现的promise 一样,并将其同化为蓝鸟promise .

请记住,the term "resolve"可能是误导性的,它并不意味着"履行",但也可以遵循另一个promise ,并解决其结果.

Node.js相关问答推荐

为什么在导出的函数中调用node-sqlite3中的数据库方法时不起作用?

EJS ForEach循环标记

使用AWS SDK for JavaScript V3将图像从node.js上传到s3 bucket

谷歌应用程序脚本UrlFetchApp和nodejs-axios返回不同的结果;MyFitnessPal日记

try 插入重复的邮箱时,mongoDB DuplicateKey 错误未定义

如何在 require 方法中使用路径与node.js react ?

NPM如何管理node_modules传递依赖?

在构建完成后,将AddedFiles文件夹的内容复制到dist文件夹

处理嵌套元素时,使用xml2js库解析XML时发生错误

如何使用mongoose引用不在项目中的模型

如何使用 node.js 将两个或多个 API 请求组合成一个端点并表达

在 Header 中使用 Authorization 方法和新的附加参数:accessToken 有什么区别?

无法关闭 node.js 中的mongoose 连接

带有事件网格的 Azure 函数在没有 ngrok 的情况下在本地运行

多个 Axios 请求合并

'{ id: string; 类型的参数}' 不可分配给FindOneOptions类型的参数

即使部署成功,也不会触发 Firebase 函数来填充 Firestore 集合.为什么?

mongoose 模式中的嵌套对象

错误:大多数中间件(如 bodyParser)不再与 Express Bundle

npm install packagename --save-dev 不更新 package.json