有没有一种方法可以将JSON数据自动映射到树表的PrimeNG中的树节点实例?

问题描述 投票:0回答:1

我有一些来自服务器的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;
}


primeng treenode primeng-treetable
1个回答
0
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.