Возврат результата асинхронного вызова Node.js вне его

var glob = require('glob');
glob('*.jpg', { cwd: 'images/' }, function (err, files) {
  console.log(files);
});

--> I want to console.log(); here.

Простите, что я не знаю ничего общего (возможно, вопрос также нуждается в исправлении). Как я могу назвать результаты glob вне этого? Если я захочу console.log(); не внутри glob (где console.log(files); проживает)?

РЕДАКТИРОВАТЬ:

Следуя связанному ресурсу, я успешно вывел данные из асинхронного вызова:

/*
http://stackru.com/questions/14220321/how-do-i-return-the-response-from-an-asynchronous-call
https://github.com/maxogden/art-of-node#callbacks
*/
var globResults = undefined;
function globAsync(callback) {
  glob('*.jpg', { cwd: 'public/portfolio/weddings/', sort: true }, function (err, files) {
    var results = '\''+files.join('\',\'')+'\'';
    globResults = '[' + results + ']';
    callback();
  });
};

function globCaller() {
  console.log(globResults)
};

globAsync(globCaller);

0 ответов

Другие вопросы по тегам