首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >返回Node.Js中一系列回调函数的结果

返回Node.Js中一系列回调函数的结果
EN

Stack Overflow用户
提问于 2014-05-28 09:57:27
回答 1查看 193关注 0票数 1

我在我的Node.Js / Express应用程序中有一个导出函数,我想返回一个通过它里面的一系列回调函数获得的某个值。试着让它工作几个小时但找不到正确的方法..。也许你能帮忙?下面是代码:

代码语言:javascript
复制
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;

}

然后从另一个文件调用这个导出函数以获得如下结果

代码语言:javascript
复制
 console.log(options.finalResult());

但它会返回未定义的。

求你了救命!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-28 11:01:17

代码语言:javascript
复制
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);
});
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23908423

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档