AngularJS orderBy 使用要点

AngularJS orderBy 使用要点总结:

  1,书写格式

基本应用格式为:

ng-repeat="item in itemList | orderBy:p1:p2"

参数p1可以是字段名或自定义函数,p2指是否逆序,默认是false

举例:

假设$scope中有

var itemList=[{id:201,name:‘abc‘,amount:100},{id:100,name:‘zdb‘,amount:100},
{id:10,name:‘xxx‘,amount:200},{id:80,name:‘231‘,amount:1020},
{id:50,name:‘ppp‘,amount:20},{id:1,name:‘hhh‘,amount:1100}];

按照id,倒排序

ng-repeat="item in itemList | orderBy:‘id‘:true"

    2,自定义排序:

controller中设置自定义函数,函数接受参数为当前的item,需要返回一个数值代表该item的顺序

$scope.orderIt=function(item){
    if(item.name.indexOf(‘h‘)===0)return 0;
    return 1;
};

使用方法:

ng-repeat="item in itemList | orderBy:orderIt"

  3,多字段排序:

如果上面方法还不能满足,那就要祭出绝活了!orderBy还支持多字段排序,方法如下

ng-repeat="item in itemList | orderBy:[orderIt,‘name‘,‘-amount‘]

没错,第一个参数传递数组,可以是自定义函数或字段名,字段名前面加“-”,代表倒排序。

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。