ExtJS 4使用带远程数据源的内存/分页内存代理

时间:2016-02-09 10:32:46

标签: extjs extjs4

在我的应用程序中,我想从远程源(以JSON格式)加载一组数据,以便在本地完全继续使用它(过滤,排序,分页)。 store.load()操作必须从远程源获取数据。

据我所知,最适合的商店代理类型是Ext.ux.data.PagingMemoryProxy,但它的子类Ext.data.proxy.Client,因此它无法使用远程数据源(我可以使用url属性设置基于Ext.data.proxy.Server的代理)。

如果我将data直接添加到商店配置,则所有工作都按预期工作。

哪种代理类型最适合我的情况?

1 个答案:

答案 0 :(得分:0)

我有一个类似的问题,但没有本地文件,但从服务器gettin json,我使用缓冲存储来做到这一点:

http://docs.sencha.com/extjs/5.1/5.1.2-apidocs/#!/api/Ext.data.BufferedStore (同样在extjs 4上)

我个人使用内存代理只在执行期间保存数据。重新加载或关闭页面数据始终被删除(某种浏览器ram)。

如果equipment / get_all_devices是JSON,请尝试使用带有json reader的bufferedstore。如果您使用缓冲存储Ajax请求使用限制与您的页面大小(pageSize:25)

对大量数据有用