extjs-如何禁用存储分页

extjs-如何禁用存储分页,extjs,pagination,extjs4.2,Extjs,Pagination,Extjs4.2,每当存储(Ext.data.store)从服务器读取数据时,它都会在json代理中发送分页参数,如&page=1&start=0&limit=25,或者使用直接代理发送[page:1,start:0,limit:25] 我想在存储或代理配置中禁用分页 我找到了这个解决方法,但我相信一定有更好的方法 proxy: { pageParam: undefined, startParam: undefined, limitParam: undefined, ... }

每当存储(
Ext.data.store
)从服务器读取数据时,它都会在
json
代理中发送分页参数,如
&page=1&start=0&limit=25
,或者使用
直接
代理发送
[page:1,start:0,limit:25]

我想在存储或代理配置中禁用分页

我找到了这个解决方法,但我相信一定有更好的方法

proxy: {
    pageParam: undefined,
    startParam: undefined,
    limitParam: undefined,
    ...
}

有人知道如何正确禁用分页吗?

另一个选项是覆盖代理的
getParams
方法。这将处理分组、分类器、过滤器、页面、开始和限制参数。 它在
Ext.data.proxy.Server中定义

如果要禁用所有Extjs使用的参数,则可以简单地将其替换为空方法:

proxy: {
    getParams: Ext.emptyFn,
    ...
}

您还可以扩展代理类并重写此方法。

在存储上设置以下内容:

{
    defaultPageSize: null
}
我设定:

在模型配置中

store: {
    pageSize: 0,
    limit:0,
....
}
从请求中排除

第页:__

开始:__


限制:要禁用分页,必须将值设置为空字符串,而不是未定义。像这样:

pageParam: '',
startParam: '',
limitParam: '',

这在Ext JS 6.2中对我有效,这将禁用所有参数功能。这不是故意的。您还可以扩展代理类并重写此方法,不仅可以使用
Ext.emptyFn
,还可以使用自定义的
getParams
methodNo,这不起作用。它对分页没有影响。不幸的是,在Sencha Architect v2.2.2中创建存储时,似乎没有办法应用此解决方法。对于使用localstorage proxy的存储,我成功地使用了
store.load({limit:1})
undefined
。这对我来说不是一个进步。
pageParam: '',
startParam: '',
limitParam: '',