javascript - 简单的 orderBy 过滤器在 AngularJs 中不起作用

标签 javascript angularjs

我有一个简单的程序,可以按“年龄”对列表进行排序。但它不起作用并给出错误!请帮忙。

<html>
<head>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.8/angular.min.js" ></script> 
</head>
<body ng-app="myApp" ng-controller="myCtrl"> 
See here: <p ng-repeat="x in persons | orderby: age">{{x.name}},{{x.age}}</p>
<script>
//module declaration
var app = angular.module("myApp",[]);
//controller declaration
app.controller('myCtrl',function($scope){
    $scope.persons=[
        {name:"Peter",age:23},{name:"Lina",age:36},{name:"Robert",age:31}
    ];
});
</script> 
</body> 
</html>

最佳答案

您的代码有错误。您需要使用 orderBy:'-age'"

将您的代码更改为此并且它可以工作

See here: <p ng-repeat="x in persons | orderBy:'-age'">{{x.name}},{{x.age}}</p>

下面的工作演示

<html>
<head>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.8/angular.min.js" ></script> 
</head>
<body ng-app="myApp" ng-controller="myCtrl"> 
See here: <p ng-repeat="x in persons | orderBy:'-age'">{{x.name}},{{x.age}}</p>
<script>
//module declaration
var app = angular.module("myApp",[]);
//controller declaration
app.controller('myCtrl',function($scope){
    $scope.persons=[
        {name:"Peter",age:23},{name:"Lina",age:36},{name:"Robert",age:31}
    ];
});
</script> 
</body> 
</html>

关于javascript - 简单的 orderBy 过滤器在 AngularJs 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36858308/

相关文章:

javascript - 通过单击 html 按钮来更改其文本

css - 如何通过 css 排除一个特定的类?

javascript - 如何在 Angular 对象中使用 for 循环传递给由 $sce 渲染的字符串

linux - 安装/运行 meteor-angular 时出现问题

javascript - Pinterest 下拉菜单的工作原理是什么?

java - Java 后端的最佳 RIA 工具

javascript - 页内声音警告

javascript - Google Apps 脚本 - 如何中断循环以防止出现错误消息

javascript - 解决进入路线前不跑

javascript - 是否建议使用 $watch 而不是绑定(bind)到大型 Angular 应用程序中的函数以提高性能?