Sencha touch 2 列表分页插件

问题描述 投票:0回答:1

我有 Ext.List 项目,我想在其中应用分页,我找到了一个插件“Ext.plugin.ListPaging”。但它在我的解决方案中不起作用。我搜索了一些有关其用法的示例,发现唯一的区别是加载要存储的数据。我的情况就是这样

Ext.define('MyApp.view.ListTemplate', {
extend: 'Ext.List',
config: {
    fullscreen: true,
    plugins: [
        {
            xclass: 'Ext.plugin.ListPaging',
            autoPaging: true
        }
    ]},
    itemTpl: '<div class="listContainer"><div class="listItemTitle">{listItemTitle}</div><div class="elapsedTime"><tpl if="listItemDate != null">{listItemDate}</tpl></div><div class="listItemDetail"><tpl if="listItemDetail != null">{listItemDetail}</tpl></div></div>'
 });


Ext.define('MyApp.store.ListStore', {
extend: 'Ext.data.Store',
config:
{
    model: 'MyApp.model.ListData',
    proxy: {
        id: 'ListStore',
        access: 'public'
    }
}
});

在我的控制器中,商店就这样填满了,

var myStore = Ext.getStore('ListStore');
myStore.setData(jsonData);
myStore.setPageSize(5);
myStore.sync();

在这种情况下寻呼不起作用,有人有什么想法吗?

pagination sencha-touch-2
1个回答
3
投票

试试这个,它与我使用的类似并且对我有用。

Ext.define('MyApp.view.ListTemplate', {
extend: 'Ext.List',
requires: [
    'Ext.plugin.ListPaging'
    ],
config: {
    fullscreen: true,
    storeId: 'ListStore',
    plugins: [
        {
            type: 'listpaging',
            autoPaging: true
        }
    ]},
    itemTpl: '<div class="listContainer"><div class="listItemTitle">{listItemTitle}</div><div class="elapsedTime"><tpl if="listItemDate != null">{listItemDate}</tpl></div><div class="listItemDetail"><tpl if="listItemDetail != null">{listItemDetail}</tpl></div></div>'
 });


Ext.define('MyApp.store.ListStore', {
extend: 'Ext.data.Store',
config:
{
    model: 'MyApp.model.ListData',
    pageSize: 5,
    storeId: 'ListStore',
    proxy: {
        id: 'ListStore',
        pageParam: 'param' //very important the parameter you use in the server side for pagination
        url: 'somesite.com' //you dont seem to have specified a url
    }
}
});
© www.soinside.com 2019 - 2024. All rights reserved.