Вот код, который берет модель Backbone, сохраняет ее, а затем ждет ответа и запускает код jQuery .done() или .fail(). Это работает нормально, но в противном случае мы действительно хотим, чтобы возвращаемое сообщение из службы добавило его в наш объект ошибок. Все это находится в функции проверки подлинности Backbone validate(); после этого кода мы проверяем объект errors и выводим сообщение, если оно есть.Как продолжить выполнение JS после deferred.fail()
Кажется, что если мы .fail(), все перестает выполняться. Нам нужно продолжить проверку. Я нашел этот вопрос/ответ, но, похоже, это не изменило ситуацию: Is there a way to continue after one deferred fails?
Любой способ продолжить выполнение кода после нажатия на deferred.fail()?
addressModel.save().done(function() {
console.log("promise done");
model.set("...", false);
}).fail(function(response) {
console.log("promise fail");
if (response.responseJSON && response.responseJSON._messages) {
_.each(response.responseJSON._messages, function(value, key) {
errors[key] = value[0];
});
}
});
http://stackoverflow.com/questions/28131082/jquery-ajax-prevent-fail-in-a-deferred-sequential-loop/? – guest271314