我正在研究无限分页(http://addyosmani.github.io/backbone.paginator/examples/infinite-paging/index.html)
我正在使用 CompositeView 进行分页视图。
我遇到了以下问题。每次在我获得新的数据部分后,Paginator 的集合都会删除旧数据并添加新数据,以便使 CompositeView 重新呈现和擦除旧结果。
我该如何解决这个问题?我正在考虑禁用重新渲染功能,但应该如何正确完成?
提前致谢!
var BaseFeedChronoCompositeView = Backbone.Marionette.CompositeView.extend({
tagName: "div",
template: _.template(ChronoFeedComposite_html),
itemView: Article,
events: {
'click #loadmore-button-manual': function (e) {
e.preventDefault();
this.collection.requestNextPage();
},
appendHtml: function (collectionView, itemView, index) {
collectionView.$("#chronoFeed-content").append(itemView.$el);
}
});
这是基本代码。this.collection.requestNextPage() - 向服务器发送数据请求。获取数据后 this.collection 删除旧模型并添加新模型。
Composite View 正在监听这些事件,并为旧模型删除 itemViews 并为新模型附加 itemViews。
而且我需要 CompositeView 不要删除旧的 itemViews。