【问题标题】:GroupBy and limitTo does not work together ? AngularJSGroupBy 和 limitTo 不能一起工作? AngularJS
【发布时间】:2018-03-21 05:33:56
【问题描述】:

我用谷歌搜索了很多,但找不到解决方案。

我想同时使用 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}
];

如果它们是分开的,那么它的工作
但是当他们在一起时,它不起作用

我该如何解决?

【问题讨论】:

    标签: angularjs filter group-by angularjs-ng-repeat angular-filters


    【解决方案1】:

    看起来你需要添加一个toArray 过滤器来将 groupBy 结果转换回 limitTo 的数组:

    &lt;ul ng-repeat="(key, value) in items | groupBy: 'group' | toArray | limitTo: limit"&gt; ... &lt;/ul&gt;

    【讨论】:

    • 它没有帮助
    • 哦,我明白了。它确实对我有用.. 请注意,您的 value 然后是一组项目。你想对他们做什么?我刚刚打印了 {{key}} : {{value}} 并得到了0 : [{"name":"Audi","group":1},{"name":"BMW","group":1}] 1 : [{"name":"Dodge","group":2},{"name":"Fiat","group":2}]
    猜你喜欢
    • 1970-01-01
    • 2015-12-16
    • 2015-04-03
    • 2018-04-05
    • 1970-01-01
    • 2019-06-24
    • 1970-01-01
    • 2016-09-12
    • 2014-01-07
    相关资源
    最近更新 更多