首页 > 解决方案 > angularJS过滤表根据数据

问题描述

我有一个看起来像这样的列表

[
    { OfficialID:1, name:'test', isActive:false },
    { OfficialID:2, name:'test4', isActive:true },
    { OfficialID:3, name:'test2', isActive:true }
]

现在我只想过滤并仅在 isAcitve 为真时显示数据,

这是我的桌子

 <tr ng-repeat="d in dc.officialLeaves | filter:isActive">
     <td>{{d.OfficialID}}</td>
 </tr>

我想我知道我想使用这样的东西filter:isActive

但我到底应该怎么做?

标签: angularjsfilter

解决方案


这很好,但过滤器会经常运行。为了提高性能,您可以考虑在组件中过滤一次:

dc.activeOfficialLeaves = officialLeaves.filter(o => o.isActive)

 <tr ng-repeat="d in dc.activeOfficialLeaves">
     <td>{{d.OfficialID}}</td>
 </tr>

推荐阅读