我有一些代碼,看起來像:有沒有辦法在初始化時驗證backbone.js模型?
var instance = new ModelA(element);
if(instance.isValid()){
CollectionA.add(instance);
}
有沒有更好的方式來寫這個?寧願要麼初始化ModelA或添加到CollectionA將失敗或拋出。
我有一些代碼,看起來像:有沒有辦法在初始化時驗證backbone.js模型?
var instance = new ModelA(element);
if(instance.isValid()){
CollectionA.add(instance);
}
有沒有更好的方式來寫這個?寧願要麼初始化ModelA或添加到CollectionA將失敗或拋出。
您必須重寫構造函數。
有關更多信息,請參閱here。
骨幹在這烤權。在你的模型代碼提供了一個validate方法,將之前的任何保存(你也可以做它通過傳遞設置被調用{驗證:真}。
這裏有一個片段從backbone docs:
var Chapter = Backbone.Model.extend({
validate: function(attrs, options) {
if (attrs.end < attrs.start) {
return "can't end before it starts";
}
}
});
如果驗證返回任何東西,那麼骨幹SAVE不會發生,但是,如果它通過你的驗證功能,乾淨,沒有任何回報,那麼它將與節約繼續
我認爲這個問題不是關於薩夫模型,但停止它的建設。不確定通過。 –