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