Мне нужно поймать ошибку и отклонить цепочку обещаний ниже.Поймать ошибку и отклонить обещание
Как это
var deferred = new $.Deferred();
deferred.resolve();
deferred.then(function() {
try {
throw new Error();
} catch (err) {
return $.Deferred().reject();
}
}).then(function() {
console.log('success', arguments);
}, function() {
console.log('fail', arguments);
});
быть сделаны отвергнута в JQuery? Я ожидал бы fail
, но есть success
.
Какая версия JQuery? – guest271314
@ guest271314 Я думаю, это был ответ, мой был слишком стар (1.7). У вас есть идея, когда они фиксируют обещания? Является ли код в ответе более отказоустойчивым (по-прежнему не работает на 1.7, хотя). – estus
Не уверен в значении _ «Является ли код в ответе более отказоустойчивым? _? Из документации http://api.jquery.com/deferred.then/ были внесены изменения в 'deferred.then()' в 1.8 http://blog.jquery.com/2012/08/09/jquery-1- 8-release/http://bugs.jquery.com/ticket/11010 – guest271314