我有store
个ajax
代理,可根据用户输入向数据库发送查询。
我的pagingToolbar
读取从JSON响应返回的所有记录,并根据我的pageSize
进行划分。
但是,无论pageSize
定义了什么,我的网格都会显示所有结果。
我没有权力添加任何服务器端的启动/限制逻辑,并且参数start
和limit
似乎不限制我的store.load()的结果功能。 (我在控制台中看到了所有JSON结果)
是否可以实现一些后处理功能来限制每页显示的结果数量,并使其与我的pagingToolbar
相对应?我的猜测是在我beforeload
定义的store
监听器中放置一些脚本,但我不知道如何实现这一点。
这是我的网格:
商店示例:
var store = Ext.create('Ext.data.Store', {
autoLoad : false,
model : model,
pageSize: 5,
proxy: {
type : 'ajax',
url : 'MyServlet',
reader: {
type : 'json',
root : 'mydata'
}
},
listeners : {
beforeload: function(store, operation, options){
//set limit of each page, do so and so onClick of "next" button, etc.
}
}
});
store.load({etc.});
我注意到一些奇怪的事情,当我在buffered: true
上定义store
时,pageSize正常工作,我只看到n
个结果,但是当我点击下一步数据时不会改变,缓冲的网格不是我想要的¯\_(ツ)_/¯