Angular.js:如何使用orderby命令对象

时间:2015-08-03 00:47:30

标签: javascript angularjs angularjs-orderby

这是我的角度代码:

    <li ng-repeat="(key, value) in list | orderBy:customOrderFn">
        <span>{{key}}: {{value.age}}</span>
    </li>

        app.controller('ListController', function ($scope) {
            $scope.list = {
                'name1': {
                    age: 22
                },
                'name2': {
                    age: 21
                },
                'name3': {
                    age: 23
                }
            }

            $scope.customOrderFn = function (person) {
                console.log(person);
                return person.age;
            }

我想按每个人的年龄订购,所以我使用自定义订单功能。但这似乎不起作用。

那么我的代码有什么问题?我该如何解决?

1 个答案:

答案 0 :(得分:1)

来自AngularJS Docs

  

通过表达式谓词对指定的数组进行排序。这是订购   字母表中的字符串和数字上的数字。注意:如果你   通知编号未按预期排序,请确保它们是   实际上被保存为数字而不是字符串。

看一下这个答案:https://stackoverflow.com/a/12041694/2803660

这可能会有所帮助。