ext 7 图表代理数据格式

ext 7 chart proxy data format

我尝试在 ext 7 的笛卡尔图表上使用直接代理加载 json 数据,如下所示: https://fiddle.sencha.com/#view/editor&fiddle/3bae

在此示例中,我从 ajax 加载数据,但 return 数据是相同的。 (它实际上是从我直接 api 复制粘贴的)。我在我的测试系统上有相同的结果:我可以加载硬编码数据但不能从代理加载。

我必须如何格式化数据才能填充我的图表?

  1. 你的 JSON 的根 属性 必须是 'result.data'
  2. 数据是对象,不是数组

对于您的自定义 JSON,您可以编写 reader 转换器,如下所示:

    ...
    ...
    proxy: {
        type: 'ajax',
        url: 'test.json',
        reader: {
            type: 'json',
            rootProperty: 'data',
            fields: ['month', 'value'], // What is it? 
            transform: {
                fn: function (data) {
                    return Object.values(data.result.data);
                },
                scope: this
            }
        }
    },
    autoLoad: true
});

或者您可以更改后端以生成标准 extjs json,示例:

{
    "users": [
       {
           "id": 1,
           "name": "Ed Spencer",
           "email": "ed@sencha.com"
       },
       {
           "id": 2,
           "name": "Abe Elias",
           "email": "abe@sencha.com"
       }
    ]
}