Comment cacher le premier élément d'une répétition ng?
<div ng-repeat="item in items" ng-hide="true">
<div>{{ item.value }}</div>
</div>
Cela fonctionne en ce sens que tout le bloc ng-repeat est masqué, mais comment masquer uniquement le premier élément des éléments? Je veux l'afficher complètement différemment en utilisant un html/etc plus important, il est donc utile de l'avoir dans cette liste de données.
Tu peux le faire
<div ng-repeat="item in items" ng-show="!$first">
<div>{{ item.value }}</div>
</div>
Voici les documents: http://docs.angularjs.org/api/ng.directive:ngRepeat
Pas besoin de se cacher, utilisez simplement un filtre pour exclure le premier élément de la liste:
<div ng-repeat="item in items|filter:$index>0">
<div>{{ item.value }}</div>
</div>
Il existe une solution plus simple dans les versions plus récentes d'Angular.
Le filtre "limitTo" prend désormais en charge un argument "begin" ( docs ):
{{ limitTo_expression | limitTo : limit : begin}}
Vous pouvez donc l'utiliser comme ceci dans une répétition ng:
ng-repeat="item in items | limitTo: items.length : 1"
Cela signifie que ng-repeat commencera à l'index 1 (au lieu de l'index par défaut 0) et se poursuivra pendant le reste de la longueur du tableau des éléments (qui est inférieure à items.length, mais limitTo gérera cela très bien).
Dans le cas où vous devez sauter en dernier, utilisez ng-if = '! $ Last'.