Tengo una matriz como esta:
type categories = { name: string; sub?: categories[]; }; categories: Array<categories> = [{ name: 'C1', sub: [{name: 'S1', }, {name: 'S2', sub: [{ name: 'SS1', sub: [{ name: 'SSS1', }, { name: 'SSS2', },], },], },], },];Cada sub puede tener subs ilimitados. ¿Cómo puedo representar todos los elementos de todos los subarreglos?
¡Gracias!
Puede anidar recursivamente componentes así:
@Component({ selector: 'example-component', template: ` <div *ngFor="let nestedCategory of nestedCategories.sub"> <div>{{nestedCategory.name}}</div> <div *ngIf="nestedCategory.sub"> <example-component [nestedCategories]="nestedCategory.sub"></example-component> </div> </div> ` }) export class ExampleComponent { @Input('nestedCategories') nestedCategories!: Array<categories>; }Luego, en la plantilla de su componente principal, puede declararlo de la siguiente manera:
<example-component [nestedCategories]="categories"></example-component>