Backbone.js BackboneJs验证未启动

Backbone.js BackboneJs验证未启动,backbone.js,backbone-events,Backbone.js,Backbone Events,我需要控制台在创建没有标题的歌曲时发出通知 我试过了,但控制台什么也没显示。 也不会抛出语法错误 var Song = Backbone.Model.extend({ defaults: { title: "default title", track: 0 }, initialize: function() { this.on("change:title", function(){ c

我需要控制台在创建没有标题的歌曲时发出通知 我试过了,但控制台什么也没显示。 也不会抛出语法错误

var Song = Backbone.Model.extend({
    defaults:
    {
        title: "default title",
        track: 0
    },
    initialize: function()
    {
        this.on("change:title", function(){
            console.log("title changed");
        }); 

        this.on("error",function(model,error)
        {
            console.log(error);
        });
    },
    validate: function(attribs)
    {   
        if (attribs.title === "default title") 
        {
            return "please set a title";
        }
    }
});

var song1 = new Song;
song1.set({ track: 1});
主干1.1:

模型验证现在仅在默认情况下在保存中强制执行,而不是在集合中强制执行 除非传递了
{validate:true}
选项。现在进行模型验证 激发“无效”事件而不是“错误”

试一试

把你的听众变成

this.on("invalid", function(model, error) {
    console.log(error);
});

还有一个演示

谢谢,看起来我正在读一本过时的书“开发主干网.js应用程序”
this.on("invalid", function(model, error) {
    console.log(error);
});