如何将对象数据转换为 react-d3-tree 已知的格式

How to translate object data to a format known by react-d3-tree

我目前在使用 react-d3-tree 中的数据时遇到问题。来自服务器的数据与 react-d3-tree 接受的格式不兼容。

有人告诉我,对每个​​项目使用 foreach 函数来执行此过程会奏效,但我认为这会很慢,尤其是当数据太大时。

现在的数据(如我的控制台所示)是这样的:

0:  {
        series: 'Fate'
        type: 'Servant'
        class: 'Saber',
    },
1:  {
        series: 'Fate',
        type: 'Servant'
        class: 'Archer',
    },
2:  {
        series: 'Fate',
        type: 'Demi-servant'
        class: 'Shielder',
    }

而我想实现这个结构:

[
    {
        name: 'Fate',
        children: [
            {
                name: 'Servant',
                children: [
                    {
                        name: 'Saber',
                        children: []
                    },
                    {
                        name: 'Archer',
                        children: []
                    }
                ]
            },
            {
                name: 'Demi-servant',
                children: [
                    {
                        name: 'Shielder',
                        children: []
                    }
                ]
            }
        ]
    }
]

这只是示例数据,稍后,我可能会转换带有更多子项的数据。是否有任何有用的 npm 包?

没关系,我真的找到了答案。

我会分享这些有用的链接,以防有人也发现这个问题。

https://www.npmjs.com/package/shape-json
https://www.npmjs.com/package/shape-array