编程语言
首页 > 编程语言> > javascript-如何在ng-repeat中为对象的字段应用过滤器?

javascript-如何在ng-repeat中为对象的字段应用过滤器?

作者:互联网

我想对选定的对象字段应用角度滤镜.我有状态列表[“ waiting”,“ conform”,“ rac”],当我选择一个状态时,应该在表中提供具有该状态的人员的信息.

例如,如果某人的机票符合要求,那么当我们选择status = conform时,仅显示的人应拥有符合性机票.同样地等待和种族

请查看演示和代码.它不起作用.请帮忙..
Please see the demo

的HTML

<div class="col-md-12">
   <table>
      <thead>
        <tr>Name</tr>
        <tr>Status</tr>
      </thead>
      <tbody >
        <tr ng-repeat="person in list| filter: status">
          <td>{{person.name}}</td>
          <td>{{person.status}}</td>
        </tr>
      </tbody>
   </table>
</div>

控制器:

$scope.status_list=["waiting", "conform", "rac"];
  $scope.list = [
  { 'name': 'A',

    'status':'waiting'
  },
  { 'name': 'B',

     'status':'conform'
  },
  { 'name': 'C',
     'status':'rac'
  }
]

解决方法:

具体来说,是将过滤器应用于状态属性,而不是直接使用将用作包含过滤器的过滤器(将compactor设置为true以获得完全匹配).通过包含包含过滤器,您将获得列表中的人,该人将具有您要搜索状态的任何字符串的名称

<tr ng-repeat="person in list| filter: { status: status}: true">
   <td>{{person.name}}</td>
   <td>{{person.status}}</td>
</tr>

Correct typo of ng-repead to ng-repeat

Demo here

标签:angularjs-filter,angularjs,angularjs-ng-repeat,javascript
来源: https://codeday.me/bug/20191119/2032871.html