Angular JS隐藏了ng-repeat的第一个元素
我将如何隐藏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: ng重复
不需要隐藏,只需使用filter从列表中排除第一项:
<div ng-repeat="item in items|filter:$index>0"> <div>{{ item.value }}</div> </div>
在更新版本的Angular中有一个更简单的解决scheme。
filter“limitTo”现在支持“开始”参数( 文档 ):
{{ 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'。