在JSON中为EXTJS树指定根

时间:2011-07-07 21:19:50

标签: json extjs tree

我在ExtJS 3.4.0中创建了一个树。我理解组件期望的JSON应该像这样返回:

    [{
        id: 1,
        text: 'Brian',
        leaf: true,
        checked: false
    }]

但是我要反复给我的JSON有一个这样的根节点:

    {"message": 
        {"nodes":
            [{
                "text":"Brian",
                "id":"1",
                "leaf":true,
                "checked":false
            }]
         }
     }

我没有看到在我的配置中指定JSON中实际树数据的方法。这甚至可能吗?我看到了一个“根”参数,但这是不同的。有没有办法在传入的JSON中指定“开始”的位置。

哦,我无法控制传入的JSON,或者显然我只是更改了JSON。 : - )

由于

2 个答案:

答案 0 :(得分:0)

我认为你可以按照这些方式做一些事情(通过查看ext文档):

var treePanel = {
  xtype: 'treepanel',
  loader: new Ext.tree.TreeLoader(),
  root: new Ext.tree.TreeNode({
    expanded: true,
    children: myJsonObject.message.nodes
  })
}

答案 1 :(得分:0)

您可以使用商店代理的阅读器中的“root”选项。

proxy: {
    reader: {
        type  : 'json',
        root  : 'nodes'
    },
    // Other configs
}