添加模型时,木偶集合视图不会更新

时间:2014-02-21 07:30:58

标签: backbone.js marionette backbone-views

我是Marionette的新手。所以它可能是非常基本的。

我有一个全局初始化的集合,在创建过程中是空的。

App.Colors= Backbone.Collection.extend({
    model : App.Color,
    comparator : "price"    
});


var appColors = new App.Colors();

如果我用这个空集合创建一个木偶集合视图。

var colorview= new App.ColorView({collection:appColors});

以及稍后添加到集合appColors。

appColors.add({code:'red'})

视图不应自动更新,因为它会侦听collection.add。我知道如果我输入它将会正常工作:

colorview.collection.add({code:'red'})

1 个答案:

答案 0 :(得分:1)

为了使它起作用,你必须将视图渲染绑定到集合add事件,所以在你的视图声明中基本上你必须有这样的东西:

App.ColorView = Backbone.View.extend({
    initialize: function() {
        this.listenTo(this.collection, 'add', this.render);
        ...
    }
    ...
});