小编Vin*_*eet的帖子

Backbone验证功能未被调用

我的验证函数没有在下面的代码中调用: -

var Vehicle = Backbone.Model.extend({
    color: 'green',
    validate: function (attrs) {
        var validColors = ['white', 'red', 'blue', 'yellow'];
        var colorIsValid = function (attrs) {
            if (!attrs.color) return true;
            return _.contains(validColors, attrs.color);
        }
        if(!colorIsValid(attrs)) {
            return "color must be one of: " +validColors.join(",");
        }
    }
});

var car = new Vehicle();

car.on('error', function (model, error) {
    console.log(error);
});

console.log(car.get('color'));
car.set('color', 'muave');
Run Code Online (Sandbox Code Playgroud)

请参阅小提琴 http://jsfiddle.net/vineet85/Fa8jr/5/

有人能告诉我为什么验证函数没有被调用?

backbone.js

11
推荐指数
1
解决办法
5567
查看次数

标签 统计

backbone.js ×1