bluebird相关内容

承诺中的 if-else 流程(蓝鸟)

这是我的代码的简短版本. var Promise = require('bluebird');var fs = Promise.promisifyAll(require("fs"));如果(条件A){fs.writeFileAsync(file, jsonData).then(function() {返回函数A();});} 别的 {函数A();} 两个条件都调用functionA.有没有办法 ..
发布时间:2022-01-30 23:24:29 其他开发

如何使用 Promises 链接和共享先前的结果

我正在使用 bluebird 库,需要发出一系列 HTTP 请求,并且需要一些响应数据到下一个 HTTP 请求.我已经构建了一个函数来处理我的请求,称为 callhttp().这需要一个 url 和一个 POST 的正文. 我这样称呼它: var payload = '{"Username": "joe", "Password": "password"}';var join = Promi ..
发布时间:2022-01-30 23:04:21 前端开发

承诺不只是回调吗?

我已经开发 JavaScript 几年了,我完全不理解关于 Promise 的大惊小怪. 看来我所做的只是改变: api(函数(结果){api2(函数(结果2){api3(函数(结果3){//做工作});});}); 无论如何我都可以使用像 async 这样的库,例如: api().then(function(result){api2().then(函数(result2){api3() ..
发布时间:2022-01-29 22:41:37 前端开发

未处理的拒绝错误 Bluebird

我有以下代码.它可以按预期工作,不会引发未处理的拒绝错误. p = new Promise (fulfill, reject) ->拒绝新的错误“一些错误"p.catch(错误)->控制台日志错误 现在,第二个代码示例确实引发了未处理的拒绝错误.当我清楚地处理错误时,有人可以向我解释为什么会发生这种情况. p = new Promise (fulfill, reject) ->拒绝新的错误“ ..

我可以在 Parse JavaScript SDK 中使用其他承诺实现吗?

我担心我看到的使用 JQuery 兼容承诺解析的引用,因为我读过 jQuery 承诺 允许消费者改变承诺的状态.是否可以使用另一个已知的 Promises/A+ 兼容的 promise 实现(例如 ECMAScript 6 实现,或 Bluebird) 与 Parse JavaScript SDK? 通常我认为这是不可能的,但在 Parse JavaScript SDK 的 v1.4.2 中 ..
发布时间:2021-12-30 16:53:37 前端开发

如何使用 Bluebird Promises 进行分页?

我有类似的东西 new Promise (resolve, reject) ->trader.getTrades 限制,跳过,(错误,交易)->如果错误则返回拒绝错误解决交易.each(贸易)->做东西贸易 limit 被设置为任意数字,比如 10 和 skip 从 0 开始.我想继续增加 skip 直到没有更多的 trades. doStuff 是我用来处理每笔交易的函数. 这是 ..
发布时间:2021-12-29 10:31:28 前端开发

使用 Bluebird 手动承诺 pg.connect

我想承诺 node-postgres 的 pg.connect 方法以及回调中提供的内部 connection.query 方法. 我可以.promisify后者,但我需要手动实现第一个(如果我在这里遗漏了什么,请解释). 问题是,我不确定这段代码是正确的还是应该改进?代码正在运行,我只是想知道我是否按预期使用 Bluebird. //别名var asPromise = Promis ..
发布时间:2021-12-29 10:30:10 其他开发

Promise.all 的并行操作?

我相信 Promise.all 会并行执行您传递给它的所有函数,并且不关心返回的 Promise 完成的顺序. 但是当我写这个测试代码时: 函数 Promise1(){返回新的承诺(功能(解决,拒绝){for(让我= 0;我 我得到的结果是这样的 完成错误!完成错误!完成错误!完成错误!完成错误!完成错误!完成错误!完成错误!完成错误!完成错误!做对了!做对了!做对了!做对了!做 ..
发布时间:2021-12-29 10:29:18 其他开发

当事件触发时触发 Promise

我的整个项目都使用 (Bluebird) Promises,但有一个使用 EventEmitter 的特定库. 我想实现以下目标: Promise.on('connect', function() {x.doSomething();}).那么(函数(){返回新的承诺(功能(解决){y.doAction(解决);//这将导致`eventB`被发射});}).on('eventB', func ..
发布时间:2021-12-29 10:28:09 其他开发

在 promisifyAll 创建的 then 链中使用 cancel()

不确定我是否对这个标题足够清楚,但假设我有一个名为 Foo 的类,其中包含 method1、method2 和 method3.我使用 promisifyAll 来保证它的方法. 然后我有一个 then 链,我想在第二个或第一个 then 中间取消操作,并且不应再调用 then. 我阅读了有关取消的信息(http://bluebirdjs.com/docs/api/cancellati ..
发布时间:2021-12-29 10:26:35 其他开发

设置 bluebird.js 承诺分辨率的最小延迟

我想保证 bluebird.js 承诺的解决的最小延迟. 举个例子,假设我正在发出一个包含在 Promise 中的请求.我想要的行为是,如果请求时间少于5秒,我想人为地将promise解析的延迟增加到5秒.如果请求需要超过 5 秒,我不希望添加人为延迟 - 所以它比向每个请求添加静态延迟要复杂一些.所有这一切都应该对 Promise 的使用者完全隐藏 - 他们应该只看到 5 秒或更长时间内解 ..
发布时间:2021-12-29 10:25:37 前端开发

使用 async/await + Bluebird 来 promisifyAll

我正在构建一个使用 async/await 的库,我想知道是否可以将 fs 等本机模块与 一起使用异步/等待.我知道 async/await 它只是后台的 Promises,那么是否有一种本地方式来保证方法或函数?目前我正在使用 Bluebird,但我不知道这是否是一个糟糕的模式. 示例: const Bluebird = require("bluebird");const { acce ..
发布时间:2021-12-29 10:21:52 其他开发

Bluebird Promise 串行迭代,并解析为修改后的数组?

我有这个承诺,如果在数据库中找不到它,它会创建一个新的 Item 文档,然后将它存储在以前创建的 Collection 文档中.. Collection 文档是数组中的第一个字符串,数组中的任何后续索引都会转换为一个或多个 Item 文档. Promise.each “解析为未修改的原始数组" 因此 Promise.each 中的最后一个 return 正在渲染对象,但随后的 .the ..
发布时间:2021-12-29 10:20:17 前端开发