繁体   English   中英

Javascript:将简单的节点数组(带有指向父节点的指针)转换为嵌套的数据结构

[英]Javascript: Convert a plain array of nodes (with pointers to parent nodes) to a nested data structure

我已经阅读了许多解决此问题的方法,例如正在尝试使用数组到树

给定此数据:

[
  {
    "_id": 33,
    "parent": null,
    "name": "Wealth and Investment Management and Insurance",
    "code": "wm-0001",
    "__v": 0
  },
  {
    "_id": 34,
    "parent": null,
    "name": "Corporate and Investment Banking",
    "code": "cib-0001",
    "__v": 0
  },
  {
    "_id": 35,
    "parent": 33,
    "name": "WIMI Business Unit 1",
    "code": "WIMBU-0001",
    "__v": 0
  }
]

并使用此代码

var arrayToTree = require('array-to-tree');
var tree = arrayToTree(data, {
            parentProperty: 'parent',
            customID: '_id'
        });

我不明白为什么孤儿会成为孤儿? 即我回来了

[ { _id: 33,
    parent: null,
    name: 'Wealth and Investment Management and Insurance',
    code: 'wm-0001',
    __v: 0 },
  { _id: 34,
    parent: null,
    name: 'Corporate and Investment Banking',
    code: 'cib-0001',
    __v: 0 } ]

似乎如果_idNumber类型,则array-to-tree不知道该怎么做;

更改此选项会将平面数组转换为树结构。

您可以遍历数组将 _id / parent转换为string如果它们是number

如果您需要,我只会对其进行编辑(但以上方法可以解决)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM