angularjs ng-repeat按数字顺序排序字符串数组

时间:2014-06-04 04:51:05

标签: javascript angularjs angularjs-ng-repeat ng-repeat

我有一个包含ID的帖子列表 1,2,3,4,5,6,7,8,9,10,11,12 (json格式) id是String类型。但我想按照它的数字顺序订购它 正常orderBy:'fiche.id'列表显示如下。 1,10,11,12,2,3,4,5,6,7,8,9

我希望输出有序 - 1,2,3,4,5,6,7,8,9,10,11,12

2 个答案:

答案 0 :(得分:10)

我猜你的ids是字符串。一个简单的解决方案是使用否。按顺序操作。因此,只需使用orderBy:'id'而不是orderBy:'id*1',这将将id视为否。并根据数字顺序对其进行排序。

这就是您所需要的一切 - <div ng-repeat="fiche in fiches | orderBy:'id*1'">{{fiche.id}}</div>

演示:http://plnkr.co/edit/MSrPTZQP49F7Nzwhv6ef?p=preview

答案 1 :(得分:0)

理想情况下,它应该使用order-by在ng-repeat中打印正确的列表。我正在添加一个相同的小提琴示例。这是一个基本的例子。希望它有所帮助

>  http://jsfiddle.net/L45cE/