我正在做这样的事情,其中第一个函数依赖于第二个函数。是否有任何蓝鸟的方法,它的工作原理就像async.waterfall
let findOrg =() => {
return new Promise((resolve, reject) => {
db.organization.find({
where: data
})
.then(org => {
return resolve(org);
}).catch(err => {
reject(err);
});
}); };
let createOrg = org => {
return new Promise((resolve, reject) => {
if (org) {
return resolve(org);
}
db.organization.build(data)
.save()
.then((org) => {
return resolve(org);
}).catch(err => {
reject(err);
});
}); };
findOrg()
.then(org => { //going to find org
return createOrg(org); //then going to make org
}).then(newOrg => {
res.data(mapper.toModel(newOrg)); //then mapping
}).catch(err => {
return res.failure(err);
});
在上述两种功能findOrg和createOrg新希望(
ES6)
创建
我的疑问句是 - 1.我们如何能够在Bluebird
承诺库,如果一个函数解决这个问题(在顺序是依赖于其他)等
async.waterfall([
function(){},
function(){}],
function(){})
- 此处2个承诺创建。是没有什么办法
什么是*数据*?它没有价值... – trincot
我认为你可以做到async.waterfall通过使用承诺的目的,没有额外的复杂性。 ()。然后(b)。然后(c).catch(...)' – elpddev