bluebird相关内容
这是我的代码的简短版本. var Promise = require('bluebird');var fs = Promise.promisifyAll(require("fs"));如果(条件A){fs.writeFileAsync(file, jsonData).then(function() {返回函数A();});} 别的 {函数A();} 两个条件都调用functionA.有没有办法
..
..
我正在使用 bluebird 库,需要发出一系列 HTTP 请求,并且需要一些响应数据到下一个 HTTP 请求.我已经构建了一个函数来处理我的请求,称为 callhttp().这需要一个 url 和一个 POST 的正文. 我这样称呼它: var payload = '{"Username": "joe", "Password": "password"}';var join = Promi
..
我已经开发 JavaScript 几年了,我完全不理解关于 Promise 的大惊小怪. 看来我所做的只是改变: api(函数(结果){api2(函数(结果2){api3(函数(结果3){//做工作});});}); 无论如何我都可以使用像 async 这样的库,例如: api().then(function(result){api2().then(函数(result2){api3()
..
我有以下代码.它可以按预期工作,不会引发未处理的拒绝错误. p = new Promise (fulfill, reject) ->拒绝新的错误“一些错误"p.catch(错误)->控制台日志错误 现在,第二个代码示例确实引发了未处理的拒绝错误.当我清楚地处理错误时,有人可以向我解释为什么会发生这种情况. p = new Promise (fulfill, reject) ->拒绝新的错误“
..
在 Sequelize >=1.7 我们可以使用承诺 你能解释一下我如何在这段代码中从每个用户那里获取值吗: var User = sequelize.define("user", {用户名:Sequelize.STRING})用户.sync({力:真}).then(function() { return User.create({ username: 'John' }) }).then(
..
我想通过 Promise 在 JavaScript 中使用 aws-sdk. 而不是默认的回调样式: dynamodb.getItem(params, function(err, data) {if (err) console.log(err, err.stack);//发生错误否则控制台.log(数据);//成功响应}); 我想使用 promise 样式: dynamoDb.putI
..
我担心我看到的使用 JQuery 兼容承诺解析的引用,因为我读过 jQuery 承诺 允许消费者改变承诺的状态.是否可以使用另一个已知的 Promises/A+ 兼容的 promise 实现(例如 ECMAScript 6 实现,或 Bluebird) 与 Parse JavaScript SDK? 通常我认为这是不可能的,但在 Parse JavaScript SDK 的 v1.4.2 中
..
我有类似的东西 new Promise (resolve, reject) ->trader.getTrades 限制,跳过,(错误,交易)->如果错误则返回拒绝错误解决交易.each(贸易)->做东西贸易 limit 被设置为任意数字,比如 10 和 skip 从 0 开始.我想继续增加 skip 直到没有更多的 trades. doStuff 是我用来处理每笔交易的函数. 这是
..
我在下面有以下承诺链,它看起来很混乱(每个 _create* 函数都返回一个承诺): return new Promise(function (resolve, reject) {_this.database.transaction(函数(t){_this._createExternalAccount(付款,t).then(function (externalAccount) {return _
..
我正在寻找一种使用 Node v7.6 或更高版本的方法来获得 Bluebird Promise(或任何非本地承诺)当异步函数被调用时. 我可以用同样的方式: global.Promise = require('Bluebird');//或 Q/Whenvar getResolvedPromise = () =>Promise.resolve('value');得到已解决的承诺.tap(.
..
我想承诺 node-postgres 的 pg.connect 方法以及回调中提供的内部 connection.query 方法. 我可以.promisify后者,但我需要手动实现第一个(如果我在这里遗漏了什么,请解释). 问题是,我不确定这段代码是正确的还是应该改进?代码正在运行,我只是想知道我是否按预期使用 Bluebird. //别名var asPromise = Promis
..
我相信 Promise.all 会并行执行您传递给它的所有函数,并且不关心返回的 Promise 完成的顺序. 但是当我写这个测试代码时: 函数 Promise1(){返回新的承诺(功能(解决,拒绝){for(让我= 0;我 我得到的结果是这样的 完成错误!完成错误!完成错误!完成错误!完成错误!完成错误!完成错误!完成错误!完成错误!完成错误!做对了!做对了!做对了!做对了!做
..
我的整个项目都使用 (Bluebird) Promises,但有一个使用 EventEmitter 的特定库. 我想实现以下目标: Promise.on('connect', function() {x.doSomething();}).那么(函数(){返回新的承诺(功能(解决){y.doAction(解决);//这将导致`eventB`被发射});}).on('eventB', func
..
不确定我是否对这个标题足够清楚,但假设我有一个名为 Foo 的类,其中包含 method1、method2 和 method3.我使用 promisifyAll 来保证它的方法. 然后我有一个 then 链,我想在第二个或第一个 then 中间取消操作,并且不应再调用 then. 我阅读了有关取消的信息(http://bluebirdjs.com/docs/api/cancellati
..
我想保证 bluebird.js 承诺的解决的最小延迟. 举个例子,假设我正在发出一个包含在 Promise 中的请求.我想要的行为是,如果请求时间少于5秒,我想人为地将promise解析的延迟增加到5秒.如果请求需要超过 5 秒,我不希望添加人为延迟 - 所以它比向每个请求添加静态延迟要复杂一些.所有这一切都应该对 Promise 的使用者完全隐藏 - 他们应该只看到 5 秒或更长时间内解
..
我正在替换一些使用 jQuery Deferred 对象的旧代码,我正在使用 Bluebird/ES6 Promises 重写. 如果我有多个异步调用,如何在所有的promise都解决后触发一个函数. 使用 jQuery Deferreds 会是这样的: var requests = [...];//一些任意数据被迭代生成多个ajax请求var 承诺 = [];结果.forEach(
..
我正在尝试在 NodeJS 中使用 MySQL.我的整个应用程序都是用 promise 构建的,所以我也想对 mysql 模块进行 promisify. 所以我有这个: Promise = require('bluebird');var mysql = Promise.promisifyAll(require('mysql')); 现在,根据他们的 API,connect() 方法接受一
..
我正在构建一个使用 async/await 的库,我想知道是否可以将 fs 等本机模块与 一起使用异步/等待.我知道 async/await 它只是后台的 Promises,那么是否有一种本地方式来保证方法或函数?目前我正在使用 Bluebird,但我不知道这是否是一个糟糕的模式. 示例: const Bluebird = require("bluebird");const { acce
..
我有这个承诺,如果在数据库中找不到它,它会创建一个新的 Item 文档,然后将它存储在以前创建的 Collection 文档中.. Collection 文档是数组中的第一个字符串,数组中的任何后续索引都会转换为一个或多个 Item 文档. Promise.each “解析为未修改的原始数组" 因此 Promise.each 中的最后一个 return 正在渲染对象,但随后的 .the
..