我有一些来自服务器的 JSON 数据,我必须在 UI 的树表中显示这些数据。我正在为此使用 PrimeNG 树表组件。我面临的问题是树表需要特定格式的数据。
例如:
这是我从服务器获取的数据:
{
"records": [
{
"name":"Documents",
"size":"75kb",
"type":"Folder",
sub-folder: [
{
"name":"Work",
"size":"55kb",
"type":"Folder"
},
{
"name":"Expenses.doc",
"size":"30kb",
"type":"Document"
}
]
},
{
"name":"Documents",
"size":"75kb",
"type":"Folder",
sub-folder: [
{
"name":"Work",
"size":"55kb",
"type":"Folder"
}
]
}
]
}
但是,树表需要以下格式的数据:
{
"data":
[
{
"data":{
"name":"Documents",
"size":"75kb",
"type":"Folder"
},
"children":[
{
"data":{
"name":"Work",
"size":"55kb",
"type":"Folder"
},
"children":[
{
"data":{
"name":"Expenses.doc",
"size":"30kb",
"type":"Document"
}
},
{
"data":{
"name":"Resume.doc",
"size":"25kb",
"type":"Resume"
}
}
]
}
]
}
]
}
这变得很难手动完成,因为我正在解析的 JSON 的复杂性很大。有没有办法将 JSON 数据自动映射到 Tree Table 想要的方式?
这是树节点界面的样子。树节点代表树表的一行。
export interface TreeNode {
data?: any;
children?: TreeNode[];
leaf?: boolean;
expanded?: boolean;
}