bluebird相关内容
问 题 nodejs完全支持promise了,现在还需要再用Bluebird这类三方库了吗如题 解决方案 node原生的Promise在效率上比callback差很多,bluebird好像和callback效率很接近.用bluebird还是很合适的.
..
我正在使用 bluebird 处理异步脚本加载程序,而我正在努力传递错误直到我能抓到它。 当加载文件时,我调用我的方法命名为 declare like这个: declare(“storage”,[ {“name”:'util',“src” '../src/util.js'} ],function(util){ var storage = {}; //...stuff wit
..
我正在尝试使用Bluebird.js的自定义错误处理程序。 在下面的示例中,调用catch-all处理程序,而不是MyCustomError处理程序,但是当我将拒绝转移到然后函数(并解决了第一个Promise ...)时,MyCustomError处理程序被调用。 为什么?有什么问题吗谢谢。 var Promise = require('bluebird'), debug = r
..
作为节点编程人员。我习惯于使用“nodebacks”来处理我的代码中的错误: myFn(param,function(err,data) { if(err){ //错误处理逻辑 } else { //业务逻辑 } }); 撰写该功能时,我可以执行以下操作: var myFn = function(param,callback){ var calc
..
我有一些格式的Redis有很多的键,我想要获得匹配一些模式的键,并对它们进行一些操作。我不使用KEYS方法,因为它不推荐在生产。使用扫描我想知道在代码中写什么是最好的方法。我必须做一些像while循环,但使用承诺,我目前的解决方案看起来像这样(代码简化了一点): 'use strict' const Promise = require('bluebird'); const config
..
如果您在使用多个承诺时避免承诺构造函数反模式,而 Promise.all ? 有以下代码: getFoo = function(){ return new Promise(function(resolve,reject) var promises = []; promises.push(new Promise(function(resolve,reject)=> { ge
..
我有一个自定义错误类: class NetworkError extends Error { constructor(){ 超级('网络错误'); this.name ='NetworkError'; } } 我想特别处理它: import {NetworkError} from'../../common/errors'; someFunc()。c
..
我试图在TypeScript中使用新的动态 import()函数,但是我收到以下错误: TS2712: ES5 / ES3中的动态导入呼叫需要“Promise” 构造函数。确保你有一个声明为'promise' 构造函数或包含'ES2015'在您的 - lib 选项。 我可以在我的tsconfig中包含消息建议的 ES2015.promise lib,但这会让我失去类型安全,因为我正
..
通常来说,创建延迟对象通常不鼓励使用ES6风格的Promise构造函数。有没有必要(或者仅仅是以某种方式)使用延期的情况? 例如,在 this page ,以下示例作为使用deferred的理由: 函数delay(ms){ var deferred = Promise.pending(); setTimeout(function(){ deferred.resolve();
..
我正在使用蓝鸟的承诺。 我正在尝试承诺下载模块。 这是我的实现: Promise = require('bluebird '), download = require('download'); var methodNameToPromisify = [“download”]; 函数EventEmitterPromisifier(originalMethod){
..
假设我创建或有一个node.js库 lib.js export class C { constructor(value,callback){ callback(false,`Hello $ {value}`); } 任务(值,回调){ callback(false,“returned”+ value); } } 重要的是类的构造函数需要接受回调,因为它执
..
我想要检索名称列表,然后进行一些POST请求为每个名称。例如,我想要为每周的每一天的每个名称提出请求。但是,我需要限制并发POST请求的数量,因为目标服务器有速率限制。 function getNames b $ b //打开mongodb连接 //获取收集和名称数组 //在promise中返回名称数组 } function createDatesArray() { //创建
..
我要在这里学习东西。我喜欢学习!感谢您提供任何帮助! 这里有30行的Node.js JavaScript。这是一个标准的表搜索。为了简单起见,我的“表”是16个整数,0到15的序列。函数compareRow报告猜测的行 是否具有低于,等于或高于对应于事务 t ; t 需要行号 r = t 。 (当然,更长的代码更复杂。)我已经删除了所有我可以为你解散的东西。 异步问题问题)鼓励我使用承
..
我一直在开发JavaScript几年,我不明白对promise的惊讶。 似乎我所做的就是改变: api(function(result){ api2(function(result2){ api3 result3){ // do work }); }); }); 我可以使用 async ,如下: api { api2()。then(funct
..
我想使用promises,但我有一个回调API格式如: 1。 DOM加载或其他一次性事件: window.onload; //设置为回调 ... window.onload = function(){ }; 2。纯回调: 函数请求(onChangeHandler){ ... request // change happened });
..
我是比较新的Javascript中的承诺,但最近爱上了自己的风采,尤其是在蓝鸟库。 这可能是一个新手的问题,但我怎么能转换成正常同步功能异步运行?如果我举个例子,要计算的Math.random()*范围三十次平行,我究竟是如何能做到这一点与承诺(无论Q或蓝鸟) ? 解决方案 首先,承诺不会帮你做code并行运行。他们是运行时,你的任务完成等code或协调与其他任务这个任务的工具。但是
..
我使用蓝鸟上的异步加载脚本工作,我挣扎传递一个错误到哪里可以抓住它。 当一个文件被加载,我打电话给我的方法命名为声明是这样的: 申报(“存储”,[ {“名”:“UTIL”,“SRC”:“../src/util.js'} ],功能(UTIL){ 变种存储= {}; //...stuff与UTIL 返回存储; }); 使用声明之中: =声明函数(姓名,d
..
我想promisify JSON.parse 方法,但遗憾的是没有任何运气。这是我尝试: Promise.promisify(JSON.parse,JSON)(数据)。然后((结果:任意)=> {... 但我得到了以下错误 未处理拒绝错误:对象 解决方案 首先, JSON.parse 不是一个异步函数。所以,不要尝试的 promisify 的吧。 由于我想创建承诺链,
..
目前,我正在学习如何使用在承诺的NodeJS 所以我的第一个挑战是列出目录中的文件,然后让每个使用异步函数两个步骤的内容。我想出了以下解决方案,但有一个强烈的感觉,这是不是最优雅的方式来做到这一点,尤其是第一部分,我在哪里“变”异步方法分为承诺 //目的是让所有的文件的内容目录 使用异步方法fs.readdir()和fs.readFile()// //并使用蓝鸟承诺库通过承诺串联起来,[1
..
我想学习蓝鸟;因为我想我没有控制的执行。 (这个问题蓝鸟从async.js问题就在 Node.js的,异步模块,并发) 下面是一些code,再加上我的预期得到什么我吧。 问题: 为什么#3函数的#1和#2两个功能(1)在年底前开始,和(2)的第一个错误检查功能? 是什么原因造成的错误? 发生了什么事“code结束”? VAR无极=要求('蓝鸟') 功能第一部分(){ 的con
..