骨干听不发射

时间:2014-03-07 21:34:05

标签: backbone.js

我已经设置了一个简单的backbone.js应用程序。除了一个特定的事件,一切都在起作用。

无效的部分是'this.listenTo'类型的事件。我之前从未使用过这类活动,所以我确信这是我的一些误解。

app.js:

new bookView({ 
    model: bookModel
 }).render();

bookModel.js:

Backbone.Model.extend({

    defaults: function() {

        return { sections: new SectionCollection() 
    }

});

|

bookView.js:这是事件未触发的地方....

return Backbone.View.extend({

    initialize: function() {

        this.sections = this.model.get('sections'); 
        this.listenTo(this.sections, 'add', this.addSection);

    },

    addSection: function() {
                //never gets here....
        console.log("adding section...");
    }

});

有什么建议吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

您的代码没问题,take a look at this example,为了触发事件,您必须这样做:

view.sections.add({
    name: "name"
    ...
});