(Angular 2+) Wenn ng-content in * ngFor verwendet wird, kann nicht auf die Schleifenvariablen zugegriffen werden

8

Wie kann ich einen Slot innerhalb einer Schleife umwandeln / projizieren und den projizierten Inhalt auf die Loop-Variablen zugreifen lassen?

Angenommen, ich habe eine Basiskomponente mit folgendem

%Vor%

Und eine untergeordnete Komponente, die den Einschub "slot" verwendet

%Vor%

Der HTML-Code, den ich generieren möchte, ist

%Vor%

Aber was tatsächlich passiert ist, dass "Daten" nicht in der untergeordneten Komponente definiert sind, was sinnvoll ist. Gibt es eine Möglichkeit, wie ich es so machen kann?

    
riyuyu 13.02.2017, 22:22
quelle

1 Antwort

1

Mit TemplateRef ist es möglich, Template-Variablen deklarativ auf Templates-Ebene zwischen zwei Komponenten zu deklarieren. Die folgende Lösung passt nicht vollständig zu Ihrer "Slot" -Infrastruktur, könnte aber für weitere Untersuchungen nützlich sein.

list.component.ts

%Vor%

wrapper.component.ts

%Vor%

Ich habe auch eine Plunker-Demo erstellt ...

    
dhilt 09.01.2018 23:21
quelle