跳过ng-repeat中的第一项

我想跳过ng-repeat中的第一个项目

..first item here <ul class="highlight-topright"> <li ng-repeat="item in hpHeadlines | filter:$index>0"> ... </li> </ul> 

它不工作,这里有什么不对吗?

我明白,我可以使用ng-if,ng-show来隐藏东西,但我不明白为什么在这种情况下,1.3.x中的filter不起作用。

谢谢。

 <ul class="highlight-topright"> <li ng-repeat="item in hpHeadlines" ng-if="$index > 0"> ... </li> </ul> 

使用$首先为此

 <ul class="highlight-topright"> <li ng-repeat="item in hpHeadlines" ng-hide="$first"> ... </li> </ul> 

要么,

  <ul class="highlight-topright"> <li ng-repeat="item in hpHeadlines" ng-if="!$first"> ... </li> </ul> 

您也可以使用limitTofilter。

作为负指数,开始指示从input结束的偏移量。 默认为0。

 <li ng-repeat="item in hpHeadlines | limitTo: 1 - hpHeadlines.length"> ... </li> 

也许我迟到了回答这个问题。 但只是为了新手,我提供的解决scheme。 由于您想跳过第一条logging,所以您可以使用$ index或$ first来实现,如下所示:

 <li ng-repeat="item in hpHeadlines" ng-if="$index"> OR <li ng-repeat="item in hpHeadlines" ng-if="!($first)"> 

正如你所看到的,在两者中,ng-if跳过了“0”值。

ng-if不使用它作为filter,你可以使用ng-show或者ng-if 。 这很容易,因为你知道你想跳过的索引。

当你想做一些涉及所有数组的事情时,通常使用filter,例如格式化或者你不知道它们驻留在哪里的部分。

 <ul class="highlight-topright"> <li ng-repeat="item in hpHeadlines" ng-show="$index != 0"> {{item.name}} </li> </ul> 

JS小提琴

你可以用ng-show代替,就像这样:

 <ul class="highlight-topright"> <li ng-repeat="item in hpHeadlines" ng-show="$index > 0"> ... </li> </ul> 

或者你可以使用ng-if指令,以防你不想添加不可见的dom元素。