Angular JS ng-show设置

时间:2014-09-02 01:18:10

标签: javascript html angularjs angularjs-ng-repeat angularjs-filter

我尝试使用ng-repeat和ng-show将数据分成两列

<div class="col-md-4">
  <div class="row" infinite-scroll="eventSearchService.getMoreEvents()">
   <div ng-repeat="event in eventSearchService.events" ng-show="$odd">
  </div>
</div>

<div class="col-md-8">
  <div class="row" infinite-scroll="eventSearchService.getMoreEvents()">
   <div ng-repeat="event in eventSearchService.events" ng-show="$odd">
  </div>
</div>

虽然它有效但因为我将数据分摊甚至是分数。发生的事情是左边div中的方框要大得多,因此创建一个div重复,延伸的时间比右边的列长得多,后者有更小的div。有没有办法限制左侧显示的div数量或仅显示数据集的某个指数?

1 个答案:

答案 0 :(得分:2)

您实际上是在描述过滤器limitTo的使用,您可以在其中设置要在ng-repeat中显示的项目数的偏移量。

你可以这样做: -

<div ng-repeat="event in eventSearchService.events | limitTo: 8" ng-show="$odd">
</div>

请记住,ng-show仍会呈现元素并将其保留在DOM中,如果您根本不想要DOM中的ng-if元素,则可能需要使用$even