是否有可能通过从某个索引开始循环并在另一个索引处结束循环来"ng-repeat"来限制显示结果的数量



>我想实现这段代码

a[10];
for(int i=3;i<7;i++)
    a[i]

是否可以使用 ng-repeat 实现这种类型的循环

你可以(即使它是丑陋的恕我直言):

<div ng-repeat="int in ints | limitTo: -7 | limitTo: 4">
    {{ int }} at {{ $index }}
</div>

数字示例

带有"东西"的示例

Angular 过滤器很花哨,但对于这个特定的用例,你不需要它们,因为普通的 JavaScript Array.prototype.slice完全按照你想要的去做:

<div ng-controller="MyCtrl">
    <!-- $scope.ints = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] -->
    <div ng-repeat="int in ints.slice(3, 7)">
        {{ int }} at {{ $index }}
    </div>
</div>

结果:

3 at 0
4 at 1
5 at 2
6 at 3

看到它的实际效果。

limitTo 采用可选的第二个参数...

https://docs.angularjs.org/api/ng/filter/limitTo

最新更新