-2
В скрипт-a.js У меня есть эта функция:Ajax Jquery: как результат возврата?
function callGetAjax(url,callback) {
$.get(url, {}, function(result) {
// this will call the callback and pass the result
callback(result);
});
}
В скрипт-b.js я называю это:
var url = '/feed/location';
callGetAjax(url,function(result)
{
//console.log(result); <= of course this logs right
data = result;
return data;
});
console.log(result); // <= ReferenceError: result is not defined
console.log(data); // <= ReferenceError: data is not defined
Я не хочу сделать async:false
, но мне нужно, чтобы «экспорт «данные для его разработки. Спасибо.
Похоже, вы не знаете, как работают обратные вызовы. Я предлагаю вам прочитать об этом. – Siguza
Вы не можете вернуться из асинхронного метода. Это похоже на то, чтобы заказать пиццу онлайн и поесть, прежде чем она попадет в ваш дом. Вы не можете вернуться. Вся логика должна выполняться при выполнении обратного вызова. Поэтому вам нужно разбить свою логику на части. Часть до и после. – epascarello
ОК, все понятно, спасибо @epascarello – sineverba