0
我爲我的項目使用了異步模塊。這是我在文件1如何在nodeJs中返回異步功能的結果(異步模塊)
exports.check = function(option){
var object = {};
async.parallel([
function(callback){
if(!option.one){callback(null, true);}else{ callback(null, false);}
},
function(callback){
if(!option.two){callback(null, true);}else{ callback(null, false);}
},
function(callback){
if(!option.three){callback(null, true);}else{ callback(null, false);}
}
],
function(err, results){
if(results[0] && results[1] && results[2]){
object.one = results[0];
object.two = results[1];
object.three = results[2];
object.total = true;
}else{
object.one = results[0];
object.two = results[1];
object.three = results[2];
object.total = false;
}
})
return object;
}
代碼,這是在文件2的代碼,我在文件1使用功能:
var isexit = db.check(option);
console.log(isexit);
的一個問題是控制檯「未定義」。 如果我在文件中更改代碼1是線(返回對象):
exports.check = function(option){
var object = {};
async.parallel([
function(callback){
if(!option.one){callback(null, true);}else{ callback(null, false);}
},
function(callback){
if(!option.two){callback(null, true);}else{ callback(null, false);}
},
function(callback){
if(!option.three){callback(null, true);}else{ callback(null, false);}
}
],
function(err, results){
if(results[0] && results[1] && results[2]){
object.one = results[0];
object.two = results[1];
object.three = results[2];
object.total = true;
}else{
object.one = results[0];
object.two = results[1];
object.three = results[2];
object.total = false;
}
return object;
})
}
就會報錯。那麼如何在文件1中返回一個函數結果。請幫助。非常感謝!
謝謝你的幫助!因爲我想檢查以調用另一個函數。我有很多功能。所以當我想檢查不同的功能時,我必須調用檢查功能。 所以你能否建議我解決這個問題?使用返回。當我不使用異步。謝謝! – Hudo 2015-04-01 09:52:28