@krosten92

Возможно ли сохранить результат выполнения ajaxSuccess в переменную?

Ребят всем привет! Подскажите, пожалуйста, возможно ли результат выполнения ajaxSuccess сохранить в переменную? Или это бредовая затея? К сути. Мне необходимо с помощью события ajaxSuccess перехватить результат ajax запроса и сохранить его в переменную. Схематически так:
$(document).ajaxSuccess(function(e, xhr, settings) {
	return xhr.responseJSON
});

Как это можно сохранить в переменную?
  • Вопрос задан
  • 124 просмотра
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
.ajaxSuccess() ничего не возвращает. Она только добавляет функцию-обработчик события ajaxSuccess, которая вызывается в случае успешного выполнения AJAX-запроса.
Сохранить ответ, полученный в xhr можно, но значение будет присвоено только после выполнения запроса, что может произойти и через минуты или часы после вызова .ajaxSuccess().
let response;
$(document).ajaxSuccess(function(e, xhr, settings) {
	response = xhr.responseJSON
});

Правильный подход - обрабатывать результат внутри callback-функции.
Ещё более правильный - отказаться от jQuery и работать с нативным fetch через async/await.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы