angularjs – 使用角度过滤器计算组元素
发布时间:2020-12-17 17:49:38 所属栏目:安全 来源:网络整理
导读:是否可以使用角度过滤器“groupBy”( https://github.com/a8m/angular-filter#groupby)来计算每个组中的元素以用于“徽章”范围(当然不使用执行“手动计数”的功能) div class="list-group" ng-repeat="(key,value) in directoryResult | groupBy: 'TableId'
是否可以使用角度过滤器“groupBy”(
https://github.com/a8m/angular-filter#groupby)来计算每个组中的元素以用于“徽章”范围(当然不使用执行“手动计数”的功能)
<div class="list-group" ng-repeat="(key,value) in directoryResult | groupBy: 'TableId'"> <a href="#" class="list-group-item active"> <span class="glyphicon glyphicon-transport"></span> {{convertTableid(key)}} <span class="badge">{{directoryResult.length}}</span> </a> <div class="list-group" ng-repeat="item in value"> <a href="#" class="list-group-item"> <span class="glyphicon glyphicon-transport"></span> {{item.Text}} </a> </div> </div> 解决方法
如果您执行以下操作:
ng-repeat="(key,value) in directoryResult | groupBy: 'TableId' as result" 那么结果将是过滤后的变量.您可以检查组数的长度. 更新: 这是一个带有groupBy过滤器的plunker. 我采用了我发现的现有滤镜(因为角度没有内置滤镜)并添加了长度属性.结果显示正确. 更新2: 由于angular-filter不提供length属性,因此您必须使用Object.keys自行计算 <div>Number of groups: {{numGroups(result) }} </div> JS: $scope.numGroups = function(input){ return Object.keys(input).length; } 更新3: <div>Number of groups: {{numGroups(result[key]) }} </div> 更新4 <div>Number of groups: {{result[key].length}} </div> 所以你的第一个想法是好的,我只需要将它作为我的groupBy进行修改,然后重新生成一个包含所有goruped列表的对象文字. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |