1

我google搜索非常困难,但无法找到解决方案。
GroupBy和limitTo不能一起工作? AngularJS

我想使用groupBy和limitTo在一起,但它不起作用。

我的代码:

<ul ng-repeat="(key, value) in items | groupBy: 'group' | limitTo: limit"> ... </ul> 

JS:

$scope.limit = 2; // its dinamic value 

$scope.items = [ 
    {name: "Audi", group:1}, 
    {name: "BMW", group:1}, 
    {name: "Dodge", group:2}, 
    {name: "Fiat", group:2}, 
    {name: "Ford", group:3} 
]; 

如果他们是独立的,那么它的工作
他们在一起时,这是行不通的

我该如何解决这个问题?

回答

0

看起来像你需要一个toArray过滤到GROUPBY结果转换回添加到一个数组limitTo:

<ul ng-repeat="(key, value) in items | groupBy: 'group' | toArray | limitTo: limit"> ... </ul>

+0

其犯规帮助 –

+0

哦,我明白了。它确实为我工作..请注意,你的'价值'然后是一个项目的数组。你想和他们做什么?我刚刚打印了{{key}}:{{value}}并得到了0:[{“name”:“Audi”,“group”:1},{“name”:“BMW”,“group “:1}] 1:[{”name“:”Dodge“,”group“:2},{”name“:”Fiat“,”group“:2}] ''' – Ossip