backbone.js错误为TypeError:this.on不是函数this.on(“change:src”,function(){

时间:2013-01-16 10:44:05

标签: javascript backbone.js

我一直在通过这本书“开发backbone.js应用程序” 在第18页的地方有一个模型函数,如下所示:

    (function($){
    var Photo = Backbone.Model.extend({
        defaults: {
            'src': 'placeholder.jpg',
            'title':'an image placeholder',
            'coordinates':[0,0]
            },
        initialize:function(){
            this.on("change:sr", function(){
                var src = this.get("src");
                console.log("Image src has been updated to: "+src);
                });
            },
        changeSrc: function(source){
            this.set({'src':source});
            }
        });
    var somePhoto = new Photo({'src':'test.jpg', 'title':'testing'});
    somPhoto.changeSrc('thatPhoto.jpg');
    })(jQuery);

它给我一个错误

TypeError: this.on is not a function
this.on("change:src", function(){

在控制台上。
任何想法如何我可以解决这个问题。我是Backbone.js的新手。 任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:2)

您可能正在使用旧版本的Backbone。 on / off仅在0.9.0上添加,之前称为bindunbind

您应该更新到最新的Backbone(撰写本文时为0.9.9)。