Обработка выполнения deferred.then()

deferred.then() – с помощью этого метода можно установить обработчики перехода объекта deferred в состояние удачного выполнения, ошибки выполнения (resolved или rejected). then() регистрирует 2 обработчика сразу.

Возможны три варианта использования функции

deferred.then( doneFilter [, failFilter ] [, progressFilter ] )
  • doneFilter – функция, которая запустится, когда объект Deferred перейдёт в состояние неудачного выполнения (resolved);
  • failFilter – функция, которая запустится, когда объект Deferred перейдёт в состояние удачного выполнения (rejected);
  • progressFilter – функция, которая запустится, как только объекту Deferred будет выставлено одно из состояний.
deferred.then( doneCallbacks, failCallbacks )
  • doneCallbacks – функция или массив функций обработчиков перехода объекта Deferred в состояние неудачного выполнения (resolved);
  • failCallbacks – функция или массив функций обработчиков перехода объекта Deferred в состояние удачного выполнения (rejected).
deferred.then( doneCallbacks, failCallbacks [, progressCallbacks ] )
  • doneCallbacks – функция или массив функций обработчиков перехода объекта Deferred в состояние неудачного выполнения (resolved);
  • failCallbacks – функция или массив функций обработчиков перехода объекта Deferred в состояние удачного выполнения (rejected);
  • progressCallbacks – функция, которая запустится, как только объекту Deferred будет выставлено одно из состояний.

Пример

Поскольку метод jQuery.get возвращает объект jqXHR, то к нему можно применить метод .then():

$.get( "test.php" ).then(
  function() {
    alert( "$.get succeeded" );
  }, function() {
    alert( "$.get failed!" );
  }
);

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *