AngularJS - 显示过滤数据的长度?

时间:2015-02-05 11:05:26

标签: javascript angularjs

我有一个包含对象的数据数组(JSON格式)。

var users = {
  'New':{
    {Name:'One'},
    {Name:'Two'}
  },
  'Old':{
    {Name:'Three'},
    {Name:'Four'}
  }

我使用这种结构来显示数据:

<div ng-repeat="(key, value) in users">
  <p>{{key}}</p>
  <div ng-repeat="user in value | filter: query">
  </div>
</div>

如何获取过滤数据的计数? 在此先感谢您的回复!

4 个答案:

答案 0 :(得分:1)

您可以使用<div ng-repeat="user in value | filter: query as results">然后获取results.length

请参阅此处的示例:http://plnkr.co/edit/P0ORxHkVpreANErDGc3a?p=preview

答案 1 :(得分:1)

您可以执行此操作http://jsfiddle.net/HB7LU/10720/

<div ng-repeat= "user in filteredValue = (value | filter:query)"></div>

只需将过滤后的结果用作另一个名为filteredValue的范围变量,然后就可以在控制器范围内获取其长度

答案 2 :(得分:1)

它可能对你有所帮助!!它用于打印过滤的用户数量。

{{(data|filter:query).length}}

答案 3 :(得分:0)

this other question

所示

在变量

中分配过滤后的数据
<div ng-repeat="user in filtered = (users | filter: query)">
</div>

并使用filtered.length属性获取计数