Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 无法获取回调函数以将值返回到父函数_Node.js_Callback - Fatal编程技术网

Node.js 无法获取回调函数以将值返回到父函数

Node.js 无法获取回调函数以将值返回到父函数,node.js,callback,Node.js,Callback,我对nodejs还不熟悉,正在为回调而挣扎。我有一个回调块,它期望从子函数得到一个值,但是,我无法理解为什么该值没有返回到父块-user.getUser。非常感谢您的帮助 子函数 回调 输出 另外,我也不知道为什么对getUser函数的调用会发生在多个场合——正如来自多个日志的eveident一样- info: fetching details for user dhdhd 您应该将回调添加到getUser()函数中,以便在dynamoModel.get(…)完成后调用它 您正在调用方中传递回

我对nodejs还不熟悉,正在为回调而挣扎。我有一个回调块,它期望从子函数得到一个值,但是,我无法理解为什么该值没有返回到父块-user.getUser。非常感谢您的帮助

子函数

回调

输出

另外,我也不知道为什么对getUser函数的调用会发生在多个场合——正如来自多个日志的eveident一样-

info: fetching details for user dhdhd

您应该将回调添加到getUser()函数中,以便在dynamoModel.get(…)完成后调用它

您正在调用方中传递回调,但在getUser(…)中未使用它

getUser中返回的值没有意义,因为这是异步代码,结果将由传入的回调接收

getUser(userEmail, done) {
    logger.info('fetching details for user '+userEmail)
    dynamoModel.get(userEmail, done)
}

user.getUser(email, function(err, userModel){
    if(err) logger.error(err);
    logger.info(userModel);
   });
info: fetching details for user dhdhd
info:  email=dhdhd, password=ttjtkt, lastLogin=1498963442595, loginVendor=local, createdAt=Sun Jul 02 2017 12:44:02 GMT+1000 (AEST), updatedAt=Sun Jul 02 2017 12:44:02 GMT+1000 (AEST)
info: fetching details for user dhdhd
info: fetching details for user dhdhd
getUser(userEmail, done) {
    logger.info('fetching details for user '+userEmail)
    dynamoModel.get(userEmail, done)
}

user.getUser(email, function(err, userModel){
    if(err) logger.error(err);
    logger.info(userModel);
   });