【发布时间】:2017-08-05 14:21:37
【问题描述】:
我正在调用这样的函数
MyService.validate(params,function(err,response){
//results from validate
console.log(response);
})
在Myservice.validate 中有一个异步waterfall 函数正在执行
验证每个验证规则在单个函数中运行,如果任何一个失败我想返回
//run validations here
validate:function(params,callback){
async.watefall([
function (nextValidation){
if(params.length<8){
//returns to MyService.validate callback
return callback({'status':false})
}
nextValdation();
},
function (finalCallback){
if(params.name!='foo'){
//returns to MyService.validate callback
return callback({'status':false})
}
finalCallback();
}
],function(err,response){
//all validation rules passed
return callback({'status':true})
})
}
但如果其中一项验证失败,则返回不起作用,即
return callback({'status':false}) 从未被解雇
if(params.length<8){
//never fired
return callback({'status':false})
}
【问题讨论】:
标签: javascript node.js express sails.js async.js