2014-01-11 36 views
0

Folks, 如何從Y返回Z函數的結果?JavaScript module.exports callbacks

代碼:

module.exports = { 

    Z: function (req) { 
     var x = req.body 
     function getX (results) { 
      console.log (results) 
     } 
     module.exports.Y(x, getX()) 
    }, 

    Y: function (x, upstreamCallback) { 
     var locals = new Array(); 
     async.parallel([ 
      function a(callback) { 
      }, 
      function b(callback) { 
      }, 
     ], function (err) { 
      console.log(locals) 
      upstreamCallback(locals) 
     }) 
    }, 
} 

當地人被稱爲得當,它們都出現在控制檯了。問題是當地人沒有被傳回到Z ...

謝謝!

回答

5

不是NodeJS的人,但我受過高等教育的猜測是你打算pass getX,而不是叫它。如果刪除了括號,它將被傳入,然後應該作爲upstreamCallback在Y中調用。

+1

我是一個Node.js人,你是對的。他在線調用getX函數,所以它只是將該函數的結果('undefined')作爲回調函數傳入,而不是。 –

+0

我該如何給這個答案50分? :) – Cmag