以下是我的JSON。我试图用这个创建一棵树, 我尝试使用以下代码段:
require(["dijit/Tree", "dojo/data/ItemFileReadStore", "dijit/tree/ForestStoreModel", "dojo/domReady!"],
function(Tree, ItemFileReadStore, ForestStoreModel){
var store = new ItemFileReadStore({
url: "/om/web/em/tree.json"
});
var treeModel = new ForestStoreModel({
store: store,
query: {id: 'aid'},
rootId: "PSS-32",
rootLabel: "P",
childrenAttrs: ['eqList']
});
var myTree = new Tree({
model: treeModel
}, "treeOne");
myTree.startup();
});
但是这给我加载错误PSS010010026024儿童和消息:"无法读取属性'长度'未定义的错误,应该在rootID,rootLabel和childrenAttrs中指定什么?
[
{
"responseStatus": null,
"entityType": "NODE",
"aid": "p",
"id": "p",
"hsa": null,
"eqList":[ {
"responseStatus": null,
"EId": "5",
"EGroupId": "1006",
"aid": "p",
"additionalInfo": null,
"eqList": [
{
"responseStatus": null,
"EId": null,
"EGroupId": null,
"aid": null,
"additionalInfo": null,
"eqList": null,
"shelfType": null,
"isEqAvailable": null,
"id": null,
"entityType": null,
"hsa": null,
"Elist": null
}
],
"shelfType": null,
"isEqAvailable": null,
"id": "p/p",
"entityType": "E",
"hsa": "-",
"Elist": null
{
"responseStatus": null,
"EId": "5",
"EGroupId": "1006",
"aid": "p#OCS",
"EType": "1830pss-ocs",
"ERelease": "7.0",
"additionalInfo": null,
"eqList": [
{
"responseStatus": null,
"EId": null,
"EGroupId": null,
"aid": null,
"EType": null,
"ERelease": null,
"additionalInfo": null,
"eqList": null,
"shelfType": null,
"isEqAvailable": null,
"id": null,
"entityType": null,
"hsa": null,
"Elist": null
}
],
"shelfType": null,
"isEqAvailable": null,
"id": "p/p#OCS",
"entityType": "E",
"hsa": "-",
"Elist": null
}
]
}
]
答案 0 :(得分:0)
rootID属性是您要为将要创建的根项目提供的ID(以便您以后可以查询它或检查您的树是否位于顶层)。 rootLabel是你想要的root属性的标签。 childrenAttrs就是你如何告诉Tree特定节点的孩子在哪里。
我不确定您在代码中尝试做什么,因为您的数据似乎没有PSS010010026024,但我建议您在这里查看ForestTreeModel的API文档:http://dojotoolkit.org/api/?qs=1.9/dijit/tree/ForestStoreModel