Angular html 文档中的递归函数

Nao*_*omh 4 html diagram tree recursion angular

我需要从一个看起来像这样的对象数组中构建一个可视化的图表,基本上是一个家谱: 这就是我需要的:)

[{
Id:1,
child:[
       {id:2,
        child:[
               {id:4,
                child:[]}]
        },
        {id:3,
        child:[]}
        ]
}]
Run Code Online (Sandbox Code Playgroud)

我认为生成树的唯一选择是在 html 组件中使用递归函数。是否可以使用 ngfor 和 ng-template 创建递归函数?我该怎么做呢?提前致谢。

Nao*_*omh 8

以防万一有人需要解决完全相同的问题

    <ul>
      <ng-container
        *ngTemplateOutlet="Recursion; context:{ list: List}"
      ></ng-container>
    </ul>



<ng-template #Recursion let-list="list">
      <li *ngFor="let item of list">
        <a href="#">{{ item.name }}</a>
        <ul *ngIf="item.child.length > 0">
          <ng-container
            *ngTemplateOutlet="Recursion; context:{ list: item.child }"
          ></ng-container>
        </ul>
      </li>
    </ng-template>
Run Code Online (Sandbox Code Playgroud)