Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 将我的分页限制为5,以及如何突出显示当前分页页面_Angularjs_Angular Material - Fatal编程技术网

Angularjs 将我的分页限制为5,以及如何突出显示当前分页页面

Angularjs 将我的分页限制为5,以及如何突出显示当前分页页面,angularjs,angular-material,Angularjs,Angular Material,例如,我的分页中有30页,我想将它们限制为5页?例如,当我进入第5页时。我想看到这样的情景> 如何突出显示我当前的分页页面 这是我如何迭代分页的观点 .pagination.clearfix |   a.page ng-href="{{ ctrl.turnToPage(ctrl.current_page - 1) }}" ng-if="ctrl.search.meta.prev_page | valPresent" «

例如,我的分页中有30页,我想将它们限制为5页?例如,当我进入第5页时。我想看到这样的情景<代码>>

如何突出显示我当前的分页页面

这是我如何迭代分页的观点

.pagination.clearfix
            | &nbsp;
            a.page ng-href="{{ ctrl.turnToPage(ctrl.current_page - 1) }}" ng-if="ctrl.search.meta.prev_page | valPresent" «
            a.page ng-href="/clients?page={{$index + 1}}" ng-show="ctrl.urlChecker2" ng-repeat=" page in getNumber(number) track by $index"
              | {{$index+1}}
            a.page ng-href="{{ctrl.turnToPage($index + 1)}}" ng-show="ctrl.urlChecker" ng-repeat=" page in getNumber(number) track by $index"
              strong
              | {{$index+1}}
            a.page href="{{ ctrl.turnToPage(ctrl.current_page + 1) }} " ng-if="ctrl.search.meta.next_page | valPresent" »
            | &nbsp;

感谢快速回复。要突出显示当前页面,您可以使用

像这样:
ng class={active:}

有关完整示例,请参见下面的代码段

利米托 要限制要显示的页面,有两种解决方案: 使用仅使用数组的一个切片。 像这样:

a.page ng-href="{{ctrl.turnToPage($index + 1)}}" ng-show="ctrl.urlChecker" ng-repeat=" page in getNumber(number):limitTo:5:startIndex() track by $index"
startIndex
将是一个返回数组第一个索引的函数(请参见下面的snipet中的工作示例)

[]使用$index的构造函数 若要避免生成索引值为+1的转储页数组,可以使用[].constructor生成可直接在表达式中使用的空数组。 然后,使用$index确定页面

使用[]的用例的简单示例(html/es6)。构造函数解决方案:

const myApp=angular.module('myApp',[]);
myApp.controller('PaginationController',()=>{
const vm=这个;
vm.pageScont=10
vm.pagesToDisplay=5;
vm.currentPage=1;
vm.next=()=>{
返回vm.currentPage=Math.min(vm.pagesont,vm.currentPage+1)
}
vm.prev=()=>{
返回Math.max(1,vm.currentPage-1)
}
vm.startIndex=()=>{
如果(vm.currentPage>((vm.pagesToDisplay/2)+1)){
if((vm.currentPage+Math.floor(vm.pagesToDisplay/2))>vm.pagesCount){
返回vm.pageScont-vm.pagesToDisplay+1;
}
返回vm.currentPage-Math.floor(vm.pagesToDisplay/2);
}    
返回1;
}
返回虚拟机;
});
.active{
颜色:红色;
}

当前页面:{{$ctrl.currentPage}/{{$ctrl.PageScont}
上
{{$ctrl.startIndex()+$index}
下一个

您使用的路由器是什么类型的?我使用rest API很抱歉回复太晚,让我试试这个:)您有6个左右的页面,因为我在我的示例中没有设置最大页面数。我给它添加了一个最大页面行为。关于ngHref,我不能让它在代码段上工作,这就是我使用ngClick的原因。我刚刚添加了一个小代码部分来处理您的ngHref示例