Ответ 1
Вы можете сделать это
<div ng-repeat="item in items" ng-show="!$first">
<div>{{ item.value }}</div>
</div>
Вот документы: http://docs.angularjs.org/api/ng.directive:ngRepeat
Как скрыть первый элемент ng-repeat?
<div ng-repeat="item in items" ng-hide="true">
<div>{{ item.value }}</div>
</div>
Это работает в том, что весь блок ng-repeat скрыт, но как бы скрыть только первый элемент в элементах? Я хочу показать его совершенно по-другому, используя более известный html/etc, поэтому полезно иметь его в этом списке данных.
Вы можете сделать это
<div ng-repeat="item in items" ng-show="!$first">
<div>{{ item.value }}</div>
</div>
Вот документы: http://docs.angularjs.org/api/ng.directive:ngRepeat
Не нужно скрывать, просто используйте фильтр, чтобы исключить первый элемент из списка:
<div ng-repeat="item in items|filter:$index>0">
<div>{{ item.value }}</div>
</div>
Там более простое решение в более поздних версиях Angular.
Фильтр "limitTo" теперь поддерживает аргумент "begin" (docs):
{{ limitTo_expression | limitTo : limit : begin}}
Итак, вы можете использовать его так, как в ng-repeat:
ng-repeat="item in items | limitTo: items.length : 1"
Это означает, что ng-repeat начнется с индекса 1 (вместо индекса по умолчанию 0) и будет продолжен для остальной длины массива элементов (что меньше, чем items.length, но limitTo будет обрабатывать это просто отлично).
Если вам нужно пропустить последний, используйте ng-if = '! $last'.