nodejs调用范围之外的变量

时间:2016-05-23 13:47:02

标签: javascript node.js scope render

我正在使用nodejs,在JS文件中,我有以下代码来检索数据。 当我尝试使用范围之外的数据它不起作用我得到内容未定义的时间..

var data = {};
request.get({url: 'https://my-host/Mypath'}, function(err, response, body) {


  if (err) {
      console.error(err);
      data.err = err;
  }

  data= body;


});
console.log('Data: ', data);

我的主要问题是我必须向数据发送res.render,我需要向服务器发出多个请求。

1 个答案:

答案 0 :(得分:0)

您正在进行异步通话。 console.log()在请求之前执行。尝试将该console.log移动到请求回调中,它将起作用。

要在请求函数中使用它,您需要返回一个promise。也许试试Q工具: https://github.com/kriskowal/q