2016-05-30 6 views
0

Здесь я пытаюсь изменить индекс на пейджинге. Проблема заключается в том, что индекс показывался одинаково для каждой страницы в пейджинге, поэтому я хочу, чтобы его обычно меняли. Вот у меня есть plunker ссылка plunkerAngularjs Pagination Index Issue?

<li class="" ng-repeat="datalist in datalists | pagination: curPage * pageSize | limitTo: pageSize"> 
    <div> 
     {{$index+1}} 
     <span>{{ datalist.name }} </span> 
     <span> 
     {{ datalist.age }} 
     </span> 
     <span>{{ datalist.designation }}</span> 
     </div> 
</li> 



<div class="pagination pagination-centered" ng-show="datalists.length"> 
<ul class="pagination-controle pagination"> 
<li> 
    <button type="button" class="btn btn-primary" ng-disabled="curPage == 0" 
ng-click="curPage=curPage-1"> &lt; PREV</button> 
</li> 
<li> 
<span>Page {{curPage + 1}} of {{ numberOfPages() }}</span> 
</li> 
<li> 
<button type="button" class="btn btn-primary" 
ng-disabled="curPage >= datalists.length/pageSize - 1" 
ng-click="curPage = curPage+1">NEXT &gt;</button> 
</li> 
</ul> 
</div> 

Здесь индекс должен быть одинаковым для каждой страницы, но он показывал свежие цифры для второй страницы

.js файл

$scope.curPage = 0; 
$scope.pageSize = 3; 
$scope.numberOfPages = function() { 
       return Math.ceil($scope.datalists.length/$scope.pageSize); 
      }; 

angular.module('sampleapp').filter('pagination', function() 
{ 
return function(input, start) 
{ 
    start = +start; 
    return input.slice(start); 
}; 
}); 

ответ

1

Это потому, что $index просто держит отслеживание индекса повторяющихся предметов после любых фильтров.

Попробуйте изменить {{$index+1}} на {{$index + 1 + (curPage * pageSize)}} в качестве обходного пути.

Updated plunkr

+0

Большое спасибо –

+0

@machadevendher Добро пожаловать. Если этот ответ разрешил вашу проблему, вы всегда можете отметить ее как принятую –