我有一些来自服务器的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;
}
不幸的是,我遇到了同样的问题,您必须编写自己的JSON解析器来更改格式,然后再将其绑定到树上。因为primeng树模板与基于该绑定的那些特定键和操作绑定在一起。