在我的data.json文件中,我有静态数据,这些数据将被加载到treepanel中。根据此链接 reference ,我已经更改了#34; children"到"数据"。但我仍然没有在我的树状网格中找到数据。
我的data.json文件
{
"data":
[
{
"App": "active"
"iconCls":"task-folder",
"expanded":"false",
"data": [
{
"AppReport1": "active",
"leaf": "true"
}
]
}
]
}
这就是我在做什么:
initComponent: function () {
var me = this;
Ext.log("initComponent()", me);
me.treeStore = Ext.create("Ext.data.TreeStore", {
proxy: {
type: "ajax",
model : 'EPH.model.DBStatusModel',
autoLoad: true,
type: 'ajax',
url:'app/data/data.json',
reader: {
type: 'json',
root : 'data'
}
},
root: {
expanded: true
}
});
this.down('treepanel').setRootNode(store.getRootNode());
}
我想我的data.json文件有问题。它是正确的还是我需要更改一些东西。请帮我解决这个问题。谢谢。
答案 0 :(得分:1)
Childen它是Node接口配置的重要部分。
Sencha api:children
此配置参数说明数据根节点有什么。
编辑:
以及“ defaultRootProperty ”发生了什么:
Sencha api:treeStore
要使树读取嵌套数据,Ext.data.reader.Reader必须是 配置了root属性,因此读者可以找到嵌套数据 对于每个节点(如果未指定root,则默认为 '孩子')。这将告诉树查找任何嵌套的树节点 使用相同的关键字,即“儿童”。 如果在中指定了根 config确保具有子项的任何嵌套节点具有相同的 名称。请注意,设置defaultRootProperty可以完成相同的操作 事强>
答案 1 :(得分:1)
在引用链接中,第一个数据看起来是JSON对象,而在JSON文件中则是JSON数组。我认为这应该看起来。
{
"data": //root
{
"data"://children
[
{
"App": "active"
"iconCls":"task-folder",
"expanded":"false",
"data": [
{
"AppReport1": "active",
"leaf": "true"
}
]
}
]
}
}
注意:此代码取自作者的原始JSON文件。