gpt4 book ai didi

javascript - ExtJs4 Json TreeStore?

转载 作者:行者123 更新时间:2023-12-03 16:55:17 25 4
gpt4 key购买 nike

我正在将我的 ExtJs3 应用程序迁移到 ExtJs4。
在 ExtJs3 中,我有一个树状网格,它有一个加载器来加载树数据,如下所示:

loader: new Ext.tree.TreeLoader({ 
dataUrl: 'Department/DepartmentTree',
nestedRoot: 'Data.items'
})

所以我正在尝试在 ExtJs4 中创建一个 treeStore,如下所示:

   var store = Ext.create('Ext.data.TreeStore', {
model: 'DepartmentTreeModel',
folderSort: true,
proxy: {
type: 'ajax',
url: 'Department/DepartmentTree',
reader: {
type: 'json',
root: 'Data.items'
}
}
});

当我在上面的存储上调用加载函数时出现错误无法读取未定义的属性“items”

JSON 响应如下所示:

    {
"Data":{
"__type":"ListWrapperOfDepartmentTreeNodewnEzJCii:#PortalMvc.Global.Classlibrary.Model.Ui.JSONWrappers",
"items":[{
"ActualHeadcount":0,
"Headcount":0,
"Leavers":0,
"ParentId":"~~",
"Starters":0,
"children":[{
"ActualHeadcount":0,
"Headcount":0,
"Leavers":0,
"ParentId":"!#",
"Starters":0,
"children":[{
"ActualHeadcount":0,
"Headcount":0,
"Leavers":0,
"ParentId":"*w",
"Starters":0,
"children":[{
"ActualHeadcount":0,
"Headcount":0,
"Leavers":0,
"ParentId":"*z",
"Starters":0,
"children":[],
"iconCls":"admin_button",
"id":"*{",
"leaf":true,
"text":"Parking1_subtree1"
}]
}]
}]
}]
}
}

最佳答案

它期望为每组子节点重复根。所以对于“ child ”,它也在尝试读取“Data.items”。

如果你不能改变数据结构,根也可以是一个函数,像这样:

root: function(o) {
if (o.Data) {
return o.Data.items;
} else {
return o.children;
}
}

关于javascript - ExtJs4 Json TreeStore?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6263380/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com