コレクションのサブセット (「ページ」) を返すページング メソッドをコレクションに実装できます。
このようなもの(テストされていません):
var PhotoCollection = Backbone.Collection.extend({
model:TestModel,
getPage: function(pageNumber, pageLength) {
pageLength = pageLength || 10;
var first = (pageNumber - 1) * pageLength;
var last = Math.min(pageNumber * pageLength, this.length);
var page = [];
if(first <= this.length) {
for(var i=first;i<last;i++) {
page.push(this.at(i));
}
}
return new PhotoCollection(page);
}
});
したがって、コレクションから任意の「ページ」を取得できます。
//first page using default size of 10
photos.getPage(0);
//second page with page size 25
photos.getPage(1, 25);