【问题标题】:Nested JSON access outside of root data extjs根数据 extjs 之外的嵌套 JSON 访问
【发布时间】:2014-02-07 08:38:45
【问题描述】:

我有一个模型和商店如下所示:

Ext.define('Cookbook.model.List', {
    extend: 'Ext.data.Model',
    fields: [
        { name: 'key', type: 'int' },
        { name: 'title' }
    ],

    proxy: {
        type: 'ajax',
        url: global.baseUrl + '/api/cookbook/1/1/8/8/-1?take=30',
        totalProperty: 'TotalRecordCount',
        reader: {
            type: 'json',
            root: 'Data'
        }
    }
});


Ext.define('Cookbook.store.Lists', {
    extend: 'Ext.data.TreeStore',
    model: 'Cookbook.model.List',

    root: {
        expanded: true,
        id: -1,
        name: 'All Lists'
    }

});

它正在处理的json的结构如下图所示:

{"Data":
[{"title":"0 0asample cookbook","key":629},
[{"title":"0 0asample cookbook1","key":6291}],
"Count":568}

现在我的问题是:是否可以使用 Lists 存储访问计数,即使它的根位于 Data 上?

【问题讨论】:

  • 参考this
  • 谢谢@MMT,太好了!我试过了,但找不到从 json 获取计数数据的方法,有什么方法可以将它传递给 extraProperty 字段?
  • 尝试向阅读器添加计数属性
  • 我尝试将 count 属性添加到阅读器,但在检索数据时没有运气。但是我设法使用我发布的答案来获得它。如果还有其他方法可以检索数据,请随时发表评论。谢谢!
  • 你的 root 在 Data 中,但 Count 不在 Data 中。

标签: javascript extjs extjs4


【解决方案1】:

我尝试添加 count 属性,但没有得到我需要的结果。我设法使用以下代码检索数据:

var st = Ext.getStore('Lists');
st.getProxy().getReader().rawData.totalCount

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-21
    • 2014-06-11
    相关资源
    最近更新 更多