backbone 验证方法在我的情况下不会触发
backbone validate method doesn't trigger in my case
我是 backbone 的新手。
var Person = Backbone.Model.extend({
defaults: {
name: '',
age: 30,
occupation: 'fireman'
},
validate: function(attrs) {
console.log(attrs) // this won't trigger? since the model's attr changed;
},
run: function() {
return this.get('name') + ' is running';
}
})
var p = new Person({name:'James'});
p.set('age',25);
我更改了模型的 属性 但不知何故我没有看到控制台。为什么?
您需要通过传递验证选项来告诉设置方法进行验证。
http://backbonejs.org/#Model-validate
p.set({age: 25}, {validate: true});
我是 backbone 的新手。
var Person = Backbone.Model.extend({
defaults: {
name: '',
age: 30,
occupation: 'fireman'
},
validate: function(attrs) {
console.log(attrs) // this won't trigger? since the model's attr changed;
},
run: function() {
return this.get('name') + ' is running';
}
})
var p = new Person({name:'James'});
p.set('age',25);
我更改了模型的 属性 但不知何故我没有看到控制台。为什么?
您需要通过传递验证选项来告诉设置方法进行验证。 http://backbonejs.org/#Model-validate
p.set({age: 25}, {validate: true});