ich eine generische <item>
Richtlinie haben, und eine <listing>
Richtlinie mit Filtern und Paginierung Tools für die Auflistung, dass <item>
:Mehrstufige Einbindung in Angular 1,5
Beispiel: https://plnkr.co/edit/r6byzhFX5m674ONhH1JS?p=preview
Die <listing>
Vorlage ist etwa so:
<div ng-repeat="item in items">
<item date="item">
<ng-transclude ng-transclude-slot="itemContent"></ng-transclude>
</item>
</div>
Die <item>
Richtlinie verwendet die neue Winkel 1.5 Multi-Slot Einbindung Fußzeile anpassen und leicht header:
<item data="itemData">
<header>My header</header>
<footer>My custom footer</footer>
</item>
Mein Problem entsteht, wenn ich versuche, dass Elemente anpassen, wenn <listing>
verwenden. Wenn ich so etwas wie diese:
<listing items="myItems">
<item-content>
<header>{{ item.name }}</header>
<footer>My custom footer for {{ item.name }}</footer>
</item-content>
</listing>
Es funktioniert nicht, weil die <item-content>
in <item>
eingefügt wird, aber <header>
und <footer>
nicht transkludiert in ihre richtigen Plätze bekommen, und sie können den item
Umfang Variable nicht gelesen . Gibt es einen Weg, dies zu erreichen?
Können Sie einen Plnker oder Geige dafür erstellen? Ich würde gerne ein bisschen mehr in diese Angelegenheit schauen. – Beyers
Hier ist es: https://plnkr.co/edit/r6byzhFX5m674ONhH1JS?p=preview –
Soweit ich sehen kann, was Sie versuchen zu tun, wird nicht funktionieren. Entwurfseigenschaft ändert die Art der Verschachtelung von Bereichen. Sie sieht vor, dass der Inhalt einer abgeleiteten Richtlinie außerhalb der Richtlinie liegt, und nicht der Bereich, der sich innerhalb der Richtlinie befindet. Es gibt dem Inhalt Zugriff auf den äußeren Bereich. In diesem Beispiel greift der übertragene Inhalt innerhalb '' und '' auf den Controller-Bereich zu.Es könnte eine Möglichkeit geben, dies zu umgehen, indem der 'transcludeFn' -Parameter von' link' verwendet wird. Aber ich bin mir nicht sicher, wie 'transcludeFn' mit der Multi-Slot-Funktion funktioniert. –
Beyers