9

私はbackboneJsを始めたばかりです。

VisualStudio2012 を使用して簡単な例を作成しました。バックボーンを追加しました。

私のmain.jsで

var Person = Backbone.Model.extend({
defaults: {
    name: 'Mr Steel',
    age: 26,
    occupation: 'FrontEnd Web Developer'
},

validate: function(attrs) {
    if (attrs.age < 0) {
        return 'Age must be a positive number.';
    }
},

work: function() {
    return this.get('name') + ' is working.';
}
});

しかし、ブラウザ>コンソールに行くと。そして、..validate に次のように入力します。

var person = new Person();
person.get('age');//26
person.set('age', -25);//sets -25

そして、年齢を -25 に設定します。それは変だ!!助けてください。

4

1 に答える 1

21

{validate:true}パラメータをsetメソッドに渡す必要があります。

person.set('age', -25, {validate:true});

于 2013-03-31T16:30:07.000 に答える