在Angular 2 / Typescript中上下遍历多维阵列


[
  {id: 1,
  name: "test 1",
  children: [
               {id: 2,
               name: "test 1-sub",
               children: []}
            ]
}]

假设每个元素可能有孩子或可能没有孩子的json阵列,并且可以达到9个级别。

如果我想知道我在树上的位置,并且能够上下树。我知道在向下的途中,我可以简单地转到选定的子元素的索引查看它们。我将如何回到树上?

基本上,我认为页面上我有两个元素。数据中包含的主要数组,一个指示我正在使用的当前数组的元素。

codes: any = [];
currentCode: any = {};

为了使这更容易阅读和导航,我只将一次显示树的一个级别,因此主代码,其在其下方的子元素。

我需要存储一张我所花路的地图,以便每次都从顶部走下去,以达到我想达到的点?

我希望这不会太困惑。

假设:

  • ID是唯一的
  • 您只需要找到父母,而实际上不需要整个路径

有两个选择。如果可以更改JSON或保留其副本,则可以为每个节点添加_parent字段。如果您不想这样做,则可以维护密钥为ID的地图,并且值为父级参考。

无论哪种方式,您都可以通过递归遍历树填充额外的数据。

相关内容

  • 没有找到相关文章

最新更新