有谁知道我怎样才能SKIP当我使用 ng-repeat 时,JSON 完全排序(可能以一种轻松的方式)?
例如,我的源 JSON 看起来像这样 -
{
"title": "Title",
"description": "Description",
"moreInfo": "Moreinformation"
}
一旦我在 ng-repeat 中使用它,它就会按字母顺序对它们进行排序。像这样的东西 -
{
"description": "Description",
"moreInfo": "Moreinformation",
"title": "Title"
}
我的 ng-repeat 看起来像这样 -
<div ng-repeat="(key,data) in items">
<span class="one"> {{key}} </span>
<span class="two"> {{data}} </span>
</div>
我见过人们有一个单独的键数组,并使用它们来识别 JSON 对象,最终避免了按字母顺序排序。
有没有一种优雅的方法来做到这一点?
在谷歌群组中找到了很好的解决方法:
<div ng-repeat="key in notSorted(data)" ng-init="value = data[key]">
<pre>
key: {{key}}
value: {{value}}
</pre>
</div>
并在范围内:
$scope.data = {
'key4': 'data4',
'key1': 'data1',
'key3': 'data3',
'key2': 'data2',
'key5': 'data5'
};
$scope.notSorted = function(obj){
if (!obj) {
return [];
}
return Object.keys(obj);
}
在职的:http://jsfiddle.net/DnEXC/ http://jsfiddle.net/DnEXC/
原来的:https://groups.google.com/forum/#!topic/angular/N87uqMfwcTs https://groups.google.com/forum/#!topic/angular/N87uqMfwcTs
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)