我将JSON对象绑定到列表,但我只想为每个用户显示一个(第一个,因为结果是有序的)项目。我回来的JSON是每个项目,用户对象作为一个属性(item.user.username等)。有了jQuery,我会做类似的:使用AngularJS过滤JSON数据
var arr = ... JSON objects ...
var seen_users = [];
var items = [];
$.each(arr, function(i, item){
if (!$.inArray(item.user.id, arr) === -1){
items.push(item);
seen_users.push(item.user.id);
}
}
但是有没有更多的Angular-thonic方法来做到这一点?我一直在寻找过滤器,但不能找出一个简单的方法(除了迭代上面的绑定数据)来做到这一点。
UPDATE:
AngularJS代码是一个有点多后,但基本上我在我的控制器JSON对象,我通过的$ HTTP的API礼貌和ItemFactory获得的$ scope.items阵列,并非常基本的HTML来显示的东西:
<ul id="items">
<li class="item" data-ng-repeat="item in items">
{{item.title}} | {{item.posted}}
</li>
</ul>
我可以看到你的角码吗?也将显示这个HTML? – Fresheyeball
理想情况下把代码放入jsfiddle.net或带有示例数据的plunker中......虽然 – charlietfl