Обработка выполнения 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 не будет опубликован. Обязательные поля помечены *