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});