2016-12-05 3 views
0

Ich möchte eine einfache Baumkomponente erstellen, in der jeder Knoten als Vorlage angezeigt wird. So etwas wieRekursive Inhaltsprojektion

<my-tree [item]="rootItem"> 
    item: <b>{{item.name}}</b> 
</my-tree> 

so konnte ich die gleiche Komponente verwenden, um einen Baum mit verschiedenen Markup angezeigt werden, wie

<my-tree [item]="rootItem"> 
    <div class="beautiful"> item: <i>{{item.name}}</i></div> 
</my-tree> 

ich Plunker gemacht haben fast richtig zu illustrieren https://plnkr.co/edit/LL8T5a1oSWUzOVEy14jv?p=preview Der Baum angezeigt wird, aber ohne Artikelnamen. Keine Ahnung warum. Kann mir bitte jemand erklären, was ich falsch gemacht habe? Danke im Voraus.

Antwort

0

Ich denke, das ist, was Sie wollen:

Plunker example

Habe ich nur noch {{it.name}} zu

<li *ngFor="let it of item.children">{{it.name}} 
+0

Nein. Sie haben es der Baumkomponente selbst hinzugefügt, aber ich möchte alle Markup getan werden in der Vorlage, die an sie übergeben wird - '** {{item.name}}'. Baumkomponente weiß nicht, welche Struktur in 'item' und wie sie angezeigt wird, nur dass sie' children' Feld hat. – Dimanoid

+0

Aber das resultierende HTML ist was du willst, oder? –

+0

Ja, der resultierende HTML ist fast korrekt – Dimanoid