因此,我正在尝试以一定的角度对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">