以下是我目前拥有的代码,可以在每次添加或删除模型时重新呈现collectionView。然而,它似乎效率低下,因为它必须每次渲染整个事物,当我真正需要的是一个要删除的modelView或一个要添加的。那么我怎么能实现这个目标呢?
var CollectionView = Marionette.CollectionView.extend({
childView: ModelView,
initialize: function() {
[ "add", "remove" ].forEach(function(eventName) {
this.listenTo(this.collection, eventName, this.render, this);
}.bind(this));
}
});
预先感谢您提供任何帮助!
答案 0 :(得分:3)
这已经完成automatically in Marionette:
将模型添加到集合时,集合视图将会 将一个模型渲染到项目视图集合中。
从集合中删除模型(或销毁/删除)时, 集合视图将关闭并删除该模型的项目视图。