我的Node.Js / Express应用程序中有一个导出函数,我希望通过它内部的一系列回调函数返回一个特定的值。试图使它工作几个小时,但找不到正确的方法......也许你可以帮忙吗?这是代码:
exports.finalResult = function() {
var finalanswer = firstFunction(secondFunction);
function firstFunction(callback) {
dbneo.cypherQuery(context_query, function(err, cypherAnswer) {
if (err) {
err.type = 'neo4j';
return callback(err);
}
var notion = 1;
// Probably this return below doesn't work because it's inside of a db query function...
return callback(null, notion);
});
}
function secondFunction(err, notion) {
if (err) console.log(err);
var answer = notion + 1
return answer;
}
return finalanswer;
}
然后我从另一个文件调用这个导出函数来获得像
这样的结果 console.log(options.finalResult());
但它返回undefined。
请帮忙!
答案 0 :(得分:2)
exports.finalResult = function(finalCallback) {
var finalanswer = firstFunction(secondFunction);
function firstFunction(callback) {
dbneo.cypherQuery(context_query, function(err, cypherAnswer) {
if (err) {
err.type = 'neo4j';
return callback(err);
}
var notion = 1;
callback(null, notion);
});
}
function secondFunction(err, notion) {
if (err) console.log(err);
var answer = notion + 1
finalCallback(answer);
}
}
// Usage
options.finalResult(function (result) {
console.log(result);
});