我的数据可采用以下格式:
var data =
{
0:[1:"a", 2:"b", 11:"c", 22:"d"],
1:[1:"e",2:"f",11:"g",22:"h"]
}
如果我执行以下操作:
<div ng-repeat="(key, value) in data">
<div ng-repeat="(innerKey, innerValue) in value">
{{innerKey}}
</div>
<br/>
</div>
这会给我:
1 11 2 22
1 11 2 22
因为它是按键上的字符串比较排序,而不是键的数值
我真正想要的是:
1 2 11 22
1 2 11 22
有什么建议吗?
答案 0 :(得分:0)
如果您可以稍微重组一下数据,可以尝试一下。我删除了嵌套数据以简化核心问题。
http://jsfiddle.net/rsmclaug/BHF9C/
此外,数据原样不是有效的数组语法。
<div ng-repeat="item in data | orderBy:'key'">
{{item.key}} - {{item.value}}
</div>
$scope.data = [
{key: 1, value: "a"},
{key: 12, value: "c"},
{key: 2, value: "b"},
{key: 22, value:"d"}
];