我有一个带验证逻辑的Backbone模型。我已经绑定了以下方法来在验证失败时显示字段错误:
this.model.on('error', this.showError);
当我尝试设置无效值到我的模型时,错误事件被正确解雇。
this.model.set(invalidValues); // triggers showError method
但是如果我尝试使用相同的无效值保存对象,则验证会按预期失败,但错误事件不会被触发,因此 showError 方法没有被调用..
this.save(invalidValues, {error:this.failed,success:this.succeeded}); // does not trigger showError
保存不会触发错误事件,但 this.failed 会按预期调用。
那么,我需要做些什么才能确保在出现验证错误时始终触发 on error 事件?
答案 0 :(得分:3)
在保存选项中设置错误回调时,它会覆盖默认的骨干,即触发错误事件。在错误回调中,您可以在模型上触发错误事件或只调用showError方法。