在實際開發過程中存在后臺數據格式的不規范性,無法滿足ztree數據格式的規范。針對上述問題結合實際開發案例總結及解決方案如下
1.標準數據格式
var nodes = [
{name: "父節點1", children: [
{name: "子節點1"},
{name: "子節點2"}
]}
];
2.簡單數據格式
var setting = {
data: {
simpleData: {
enable: true,
idKey: "id",
pIdKey: "pId",
rootPId: 0
}
}
};
var treeNodes = [
{"id":1, "pId":0, "name":"test1"},
{"id":11, "pId":1, "name":"test11"},
{"id":12, "pId":1, "name":"test12"},
{"id":111, "pId":11, "name":"test111"}
];
enable: true / false 分別表示 使用 / 不使用 簡單數據模式
如果設置為 true,請務必設置 setting.data.simpleData 內的其他參數: idKey / pIdKey / rootPId,并且讓數據滿足父子關系。
3.實際應用
已知tree的結構為 json結構大體如下
整體數據結構
全部展開數據結構
該數據可以看出大致是標準的數據格式,但是整體的結構包括父子節點的Id、子屬性的差異化命名都存在問題,這給我們生成標準tree造成一定難度
**
解決思路:treeTolist 遞歸的方式解析該json 并在循環中將Id及屬性命名統一生成 Array簡單數據格式
**
僅供參考
僅供參考