我有一个奇怪的json数组,我可以重复一遍,但我在使用limitTo过滤器限制此列表时遇到问题。我通过http调用获取了json对象,因此我无法改变对象在后端的形成方式。
HTML:
<div ng-controller="myCtrl">
<div ng-repeat="school in schoolList | limitTo:2">
{{school.school_name}}
</div>
</div>
JSON:
{"0":{"school_name":"FAKE ELEMENTARY"},
"1":{"school_name":"CENTRAL HIGH"},
"2":{"school_name":"OAK RIDGE ELEMENTARY"},
"3":{"school_name":"PINE MEADOW ELEMENTARY"},
"4":{"school_name":"AMERICAN MIDDLE"},
"5":{"school_name":"BIG SENIOR HIGH"},
"6":{"school_name":"ST FRANCIS ELEMENTARY SCHOOL"}
以下是jsfiddle
我的第一个想法是,我可以某种方式使用$ index但到目前为止我还没有运气。任何帮助,将不胜感激。如果已经回答了这个问题,我会提前道歉,但是我一直在寻找几天而没有找到任何帮助。感谢。
答案 0 :(得分:1)
从角度来源首先检查:
if (!isArray(input) && !isString(input)) return input;
因此您必须将该数据转换为数组,请参阅此处的工作小提琴:http://jsfiddle.net/Nu7rZ/103/
角度源链接:https://github.com/angular/angular.js/blob/master/src/ng/filter/limitTo.js#L3