最初のフェッチ後にサーバーから追加のモーダルをロードしようとしていますPaginator.clientPager
これは私のコレクションで、github のサンプル コードからほとんどコピーを貼り付けたものです。
return new (Backbone.Paginator.clientPager.extend({
model: model,
paginator_core: {
type: 'GET',
dataType: 'json',
url: '/odata/LibraryFile'
},
paginator_ui: {
// the lowest page index your API allows to be accessed
firstPage: 1,
// which page should the paginator start from
// (also, the actual page the paginator is on)
currentPage: 1,
// how many items per page should be shown
perPage: 2,
// a default number of total pages to query in case the API or
// service you are using does not support providing the total
// number of pages for us.
// 10 as a default in case your service doesn't return the total
totalPages: 5
},
server_api: {
// number of items to return per request/page
'$skip': function () { return this.perPage * (this.currentPage - 1) },
'$top': function () { return this.perPage },
},
parse: function (response) {
console.log(response);
return response.value;
}
}))();
私はそのように初期フェッチを呼び出しています
myCollection.fetch({
success: function(){
myCollection.pager();
},
silent:true
});
次に、ユーザーが clientPager を使用してローカル ページをブラウズした後、おそらく最初のページを削除せずに、さらに多くのページを読み込みたいと考えます。
私はこのようにこれを達成しようとしますが、何らかの理由でpager();
、2 つの新しいレコードを呼び出した後に削除されます。
myCollection.currentPage = 2;
myCollection.fetch({
success: function(){
console.log(myCollection.length) // 4 models, with correct data
myCollection.pager();
console.log(myCollection.length) // the 2 new records are removed
},
silent:true,
remove: false // don't remove old records
});
私は何を間違っていPaginator.clientPager
ますか?
requestPager を使用したくないのは、少なくともメモリ内で事前キャッシュを行うことができないためだと思います。