Возврат результата асинхронного вызова 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);