标签: bluebird

Bluebird Promise:在 new Promise(function (resolve,reject) 中是否可以有多个reject()?

例子:

function multiRejectExample(){ 
  return new Promise(function (resolve, reject){
    if(statement){
      console.log('statement 1');
      reject(throw new Error('error'));
    }
   if(statement){
     console.log('statement 2');
     reject(throw new Error('error')); 
   }
  });
}
Run Code Online (Sandbox Code Playgroud)

我用的是蓝鸟 上面的做法可以吗?这是不好的做法吗?

另外,如果它在第一个语句中拒绝,为什么“语句 2”仍然打印出来?如果“被拒绝”我想退货,该怎么办?

使用 Promise.try 然后抛出错误是不是更好?帮助!谢谢你!

javascript promise bluebird

0
推荐指数
1
解决办法
552
查看次数

如何将 .cancel() 与 bluebird 一起使用

此处记录 API http://bluebirdjs.com/docs/api/cancellation.html

我在我的演示中尝试过,但不起作用

var Promise = require('bluebird');
var a = require('./a');
var b = require('./b');

var cancelPromise = Promise.resolve();
cancelPromise.cancel();
cancelPromise = a.fnA()
  .then(function() {
    return b.fnB();
  })
  .then(function() {
    console.log('done');
  })
  .finally(function() {
    if (cancelPromise.isCancelled()) {
      console.log('canceled');
    }
    console.log('end');
  });
Run Code Online (Sandbox Code Playgroud)

那么如何使用这个方法呢?

promise bluebird

0
推荐指数
1
解决办法
6625
查看次数

如何使用 Promise.all() 和异步循环?

我正在尝试了解 Promise 以及如何在异步循环上使用它们。

我收集了以下代码来读取三个文件的内容(使用forEach),并且当所有承诺解析时记录所有文件的输出:

var Promise = require('bluebird');
var fs = require('fs');
var path = require('path');

var files = ['1.json','2.json','3.json'];
var promises = []

files.forEach(function(file){
    fs.readFile(path.join('./',file), 'utf8', function(err,data){
        promises.push(new Promise(function(resolve, reject){
            resolve(data)
        })
                );
    })
});

Promise.all(promises).then(function(values){
    console.log(values)
});
Run Code Online (Sandbox Code Playgroud)

我不知道如何将循环放入.all()

我尝试了这段代码,但这记录了一个空数组。

我究竟做错了什么?

javascript node.js promise bluebird

0
推荐指数
1
解决办法
9818
查看次数

蓝鸟支持哪些浏览器?

我检查了蓝鸟网站无法找到答案.然后,我检查了GitHub问题,发现了一个带有浏览器支持的破旧链接.

bluebird支持哪些浏览器和浏览器版本?

bluebird

-1
推荐指数
1
解决办法
1368
查看次数

标签 统计

bluebird ×4

promise ×3

javascript ×2

node.js ×1