Ich versuche nicht, eine andere Klasse für das letzte Element eines ng-repeats hinzuzufügen.Ng-Repeat, wie für das letzte Element ng-show getestet wird
Ich habe Daten Display:
$scope.sizes = [{name:XS,available:true},{name:S,available:true},{name:M,available:false},{name:L,available:true},{name:XL,available:false}];
ich den Bereich der Daten angezeigt werden sollen, die wahr enthält, das heißt, die oben angezeigt als "XS → L" (man beachte die M-Option fehlt out).
Beste Ich habe kommen mit verwendet ng-repeat:
<span ng-repeat="size in sizes track by $index"
ng-init="sizeIndex = $index"
ng-show="size.available == true && (sizeIndex == 0 || sizeIndex == (sizes.length -1))">
{{size.short}}<span ng-show="sizeIndex ==0"> → </span>
</span>
Da dies erwartet schlägt fehl, da Größe XL erhältlich == false, und es wird nicht funktionieren, wenn die Größe XS nicht verfügbar ist.
Gibt es eine Vertauschung der Anzeigelogik, an die ich nicht gedacht habe? Oder gibt es einen "richtigen" Weg zu testen, ob ein Element das letzte (oder erste) in einer Liste ist?
wird '$ last' Ihnen helfen mit einem' filter' filtern Sie nicht Zeilen mit ng-show etc. –