我目前正在使用 Angular ng-repeat。
当用户单击“下一个 15”按钮时,我想显示接下来的 15 个项目。 我不想从数组中弹出项目,我只想隐藏前 15 个项目,并将显示限制为仅接下来的 15 个。
此外,当用户单击“Prev 15”时,我想仅显示前 15 项。
这是我到目前为止所拥有的:
HTML:
<div ng-controller="ctrlIndex as vm">
<ul ng-repeat=" item in vm.items | limitTo: 15 * vm.page
| limitTo: 15 * vm.page < count ? limitTo: 15 * vm.page : 15 - (15 * vm.page - count)"/>
<li>{{ item }}</li>
</ul>
<div><button ng-click="vm.next()">Next 15</button></div>
<div><button ng-click="vm.back()">Prev 15</button></div>
Javascript:
var app = angular.module('app', []);
3app.controller('ctrlIndex', function(){
var vm = this;
vm.numRecords = 15;
vm.page = 1;
vm.items = []
for (var i = 0; i < 1000000; ++i) {
vm.items.push('item : ' + i);
}
vm.next = function(){
vm.page = vm.page + 1;
};
vm.back = function(){
vm.page = vm.page - 1;
};
});
最佳答案
给你 - Plunker
标记
<body ng-app="app">
<div ng-controller="ctrlIndex as vm">
<ul ng-repeat="item in vm.items track by $index"
ng-show="(($index < (vm.page * vm.numRecords)) && ($index >= ((vm.page - 1) * vm.numRecords)))">
<li>{{ item }}</li>
</ul>
<div><button ng-click="vm.next()">Next 15</button></div>
<div><button ng-click="vm.back()">Prev 15</button></div>
</div>
</body>
关于javascript - 如何在 ng-repeat 中显示接下来的 15 个项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29458177/