Backbone.js - событие ошибки не срабатывает при сохранении объекта - PullRequest
0 голосов
/ 19 марта 2012

У меня есть модель магистрали с логикой проверки. Я связал следующий метод, чтобы показать ошибки поля при сбое проверки:

this.model.on('error', this.showError);

Когда я пытаюсь установить недопустимые значения для моей модели, событие error запускается правильно.

this.model.set(invalidValues); // triggers showError method

Но если я попытаюсь сохранить объект, используя те же недопустимые значения, проверка завершится неудачно, как и ожидалось, но событие error не будет запущено, следовательно, showError метод не вызывается ..

this.save(invalidValues, {error:this.failed,success:this.succeeded}); // does not trigger showError

save не вызывает событие error , но this.failed вызывается, как и ожидалось.

Итак, что мне нужно сделать, чтобы убедиться, что событие on error всегда вызывается при ошибке проверки?

1 Ответ

3 голосов
/ 19 марта 2012

Когда вы устанавливаете обратный вызов ошибки в опциях сохранения, он переопределяет значение по умолчанию магистрали, которое должно инициировать событие ошибки. При обратном вызове с ошибкой вы можете вызвать событие ошибки на модели или просто вызвать свой метод showError.

...