Marionette と backbone.paginator の統合の問題をどのように解決したかを次に示します。それはある意味では「簡単」でしたが、backbone.marionette の初心者として、しばらくの間私を悩ませました! これが誰かに役立つことを願っています。
ページネーターの paginator_ui オブジェクトから情報をレンダリングするには、compositeView で serializeData メソッドを使用します。
/* a view for presenting a backbone.paginator collection,
* and for presenting and handling its pagination UI element */
App.module('Views', function(Views, App, Backbone, Marionette, $, _) {
Views.PaginatedCollectionView = Backbone.Marionette.CompositeView.extend({
template: 'backbone/templates/paginated_collection_view',
itemView: App.Views.StructureView,
/* I'm not using a model, but you could if you
* wanted? You might even merge the two */
serializeData: function(){
if (this.model){
data = this.model.toJSON();
} else {
// we want to render the paginator_ui in our templates
data = this.collection.paginator_ui;
}
return data;
}
});
});