6

xtype: list在我的应用程序上使用 Sencha Touch List ( ) 和 listPaging 插件。通过设置,它就像创造无限效果的魅力一样autopaging: true

但是,我的问题是,如何将商店的记录(或列表中的行)保存为某个数字,例如 50 条记录。

因此,当用户向下滚动时,自动加载下一页,同时删除上一页(当前),并在向上滚动时加载上一页。

目标是限制商店的记录数量,因为如果它全部加载(通过继续向下滚动),它会使设备崩溃(在 Ipad 上测试)。

这是有道理的,我在 db 上有 40k 条记录。

4

1 回答 1

2

昨天我正在研究类似的东西,但只使用下一个功能。

您可以覆盖动态加载新页面的方法。它是loadNextPage()并在请求下一页之前添加 store.removeAll() 。

在您的列表中:

plugins: [
    {
        type: 'listpaging',
        autoPaging: true,
        noMoreRecordsText: null,
        loadMoreText: null,
        loadNextPage: function() {
            var me = this;
            if (!me.storeFullyLoaded()) {
                me.getList().getStore().removeAll();
                me.getList().setMasked(true);
                me.getList().getStore().nextPage({ addRecords: true });
            }
        }
    }
]

这仅适用于下一个,一个可能会稍微复杂一些,但也许这可以提供一个想法。可能会在触发store.previousPage()的列表顶部添加另一个 cmp

希望能帮助到你-

于 2013-11-12T13:12:05.800 回答