extjs - 如何从远程加载的存储获取服务器数据

标签 extjs

我正在使用 GroupingStore 将数据加载到网格中,数据从服务器加载并通过 JSON 读取器读取。这是相关代码

var reader = new Ext.data.JsonReader({
    successProperty: 'success',
    idProperty: 'id',
    root: 'data',
    messageProperty: 'message'  
}, [
    {name: 'id'},
    {name: 'creator'},
    {name: 'first_name', allowBlank: false},
    {name: 'last_name', allowBlank: false}
]);

var store = new Ext.data.GroupingStore({
    id: 'person',
    proxy: proxy,
    reader: reader,
    groupField:'creator',
    sortInfo:{field: 'first_name', direction: "ASC"}
});

它已正确加载到网格中,但是有了这些数据,我想发送更多数据,这些数据与网格无关,但可以节省我前往服务器的时间。 那么我是否可以访问从服务器返回的原始数据?

我尝试在加载中使用回调

store.load({'callback':loadCallback})

但是loadCallback中的数据只是记录列表而不是原始数据。

编辑:示例 从服务器我返回{'form_items':[],'data':[]},数据节点用作存储的根并包含网格行,我想访问form_items或实际上服务器返回到的原始数据商店。

最佳答案

我找到了一种方法,可以通过直接访问 store.reader.jsonData 在加载回调中完成此操作

例如

store.load({'callback':function(a,b,c){
   console.log(store.reader.jsonData)
 }});

关于extjs - 如何从远程加载的存储获取服务器数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2335273/

相关文章:

javascript - EXTJS 4 - 网格过滤器或商店过滤器清除商店中的现有过滤器

javascript - ExtJS RowExpander 插件奇怪的 colspan

javascript - 在 Sencha Touch 2 中创建 xtype?

extjs - 我必须做些什么才能获得边框布局以使 West 容器的视口(viewport)全高?

javascript - ExtJS 4 - 网格中的数据不可见

javascript - 在 Extjs 中加载 HtmlEditor 内的内容

javascript - 如何将嵌套数据显示到树中?

javascript - Extjs 3.4 删除记录后重新加载网格

javascript - 如何在5中升级extjs 3.4项目

extjs - 如何限制数字字段输入超过两位小数