我是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'})
答案 0 :(得分:1)
为了使它起作用,你必须将视图渲染绑定到集合add事件,所以在你的视图声明中基本上你必须有这样的东西:
App.ColorView = Backbone.View.extend({
initialize: function() {
this.listenTo(this.collection, 'add', this.render);
...
}
...
});