如何在angularjs中按降序排列对象数组?

前端之家收集整理的这篇文章主要介绍了如何在angularjs中按降序排列对象数组?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个非常简单的对象数组,我想在 javascript中使用$filter(‘orderBy’)对它进行排序.不知怎的,它似乎不起作用. jsFiddle

这是代码

var app = angular.module('myApp',[]);

app.controller('myController',function($scope,$filter){
    var person = [{
  name : "Saras"
  },{
  name : "Arya"
  }];
  $filter('orderBy')(person,'name');
  console.log(person);
});

我不明白为什么我不能让这个工作?感谢帮助.解决方案应该是JS而不是HTML.

您应该将第二个参数作为属性名称名称传递,然后将过滤后的结果分配给所需的范围变量.因此,在UI ng-repeat输出上不需要进行任何过滤.
$scope.person = $filter('orderBy')(person,'name');

<div  ng-repeat="p in person">
   {{p.name}}
</div>

Forked Fiddle在这里

如果你想在视图上看到它,你应该将该属性保存在一个范围变量上,或者你可以在显示记录时在客户端进行这种简单的过滤.

<div  ng-repeat="p in person | orderBy: 'name'">
   {{p.name}}
</div>

Demo here

猜你在找的Angularjs相关文章