因此,我正在尝试以一定的角度对limitTo进行某种切换效果。我的意思是,传入的数据上的值为“ showMore”,它是布尔值。如果为true,则我所在的重复次数将限制为5,否则将完全没有限制。我想知道解决此类问题的最佳方法是什么?所以我有这样的重复:

 <div ng-repeat="item in filter.values track by $index" class="builder-result-filter-value checkbox" value="item" update-filter="updateFilter">


我想要这样的东西:

 $scope.limitValue = 5;
 <div ng-repeat="item in filter.values track by $index | limitTo: limitValue" class="builder-result-filter-value checkbox" value="item" update-filter="updateFilter">


但是该过滤器数据具有其价值

filter.showMore = boolean;


因此,我希望该布尔值能够控制重复是否使用limitTo:5或完全没有限制。

我想到了做某事的一种方法

 <div ng-if="filter.showMore" ng-repeat="item in filter.values track by $index | limitTo: limitValue">
 <div ng-if="!filter.showMore" ng-repeat="item in filter.values track by $index">


但是我认为必须有一种更优雅的方式。将不胜感激任何建议/意见。谢谢!

最佳答案

无需使用ng-if。您可以使用limitTo中的limitTo: filter.showMore ? limitValue: filter.values.length表达式在HTML本身上执行此操作。

标记

<div ng-repeat="item in filter.values | limitTo: filter.showMore ? limitValue: filter.values.length track by $index">

07-26 01:28