加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

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

发布时间:2020-12-17 08:21:32 所属栏目:安全 来源:网络整理
导读:我有一个非常简单的对象数组,我想在 javascript中使用$filter(‘orderBy’)对它进行排序.不知怎的,它似乎不起作用. jsFiddle 这是代码 var app = angular.module('myApp',[]);app.controller('myController',function($scope,$filter){ var person = [{ name
我有一个非常简单的对象数组,我想在 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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读