【发布时间】:2015-03-27 01:13:52
【问题描述】:
我一直在尝试设置页面大小,以便我的应用运行得更快。我正在读取一个巨大的 xml 文件(数千行),我想使用 ListPaging 插件一次只加载一个“页面”。
这是我的清单:
xtype : 'list',
plugins: {
xclass: 'Ext.plugin.ListPaging',
autoPaging: true,
loadMoreText : 'Loading more...',
noMoreRecordsText : 'loaded'
},
store : 'mainStore',
height : '100%',
layout : 'fit',
id: 'myList',
flex : 5,
itemTpl : "foo"
这是我的商店:
config: {
model : 'myApp.model.foo',
storeId: 'mainStore',
autoLoad: true,
//currentPage: 1,
//buffered: true,
pageSize: 15,
proxy : {
type : "ajax",
url : 'resources/images/data/fooBar.xml',
startParam: 'offset',
reader : {
type : "xml",
rootProperty : 'foo',
record : 'bar'
}
}
}
但是,当我运行它时,我得到的只是整个列表底部的“正在加载更多...”文本(而不是 15 个项目),然后它只再次加载相同的 xml 数据,但这次只是将其连接到整个“列表”的末尾。
如何设置页面大小,以便每个“页面”仅显示 15 个左右的项目,然后当我滚动到列表底部(即 15 个项目长)时,我将接下来的 15 个项目连接到最后 15 个项目,总共显示 30 个项目.. 以此类推。
使用 Sencha Touch 2.4.1
更新: 这是配置:
config: {
model : 'c17App.model.approaches',
storeId: 'mainStore',
autoLoad: true,
pageSize: 15,
proxy : {
type : "ajax",
url : 'resources/images/data/approach_all.xml',
total: 17,
start: 1,
limit: 15,
reader : {
type : "xml",
rootProperty : 'approaches',
record : 'approach',
totalProperty: 'total'//maybe needs to be a number?
}
}
}
【问题讨论】:
-
你能提供完整的例子吗?您可以使用 fiddle.sencha.com
标签: extjs sencha-touch sencha-touch-2