我希望能够使用作为数组传入的许多参数来过滤我的表.因此,我可以构建一个过滤器参数数组并将它们传入.我不想明确说明要过滤的列,因为可能有许多列(一些将显示,一些不会显示).
HTML看起来像这样;
<tr ng-repeat="item in infoData | filter:['param1','param2']"> <td>{{item.data1}}</td> <td>{{item.data2}}</td> <td>{{item.data3}}</td> <td>{{item.data4}}</td> </tr>
有没有针对多个参数过滤表?
谢谢
解决方法
这是实现您所需要的快速而肮脏的方式.
首先在控制器中创建一个自定义过滤器,如下所示:
$scope.customFilter = function(param1,param2) { return function(item) { //return custom stuff here } }
然后在html中你这样做
<tr ng-repeat="item in infoData | filter:customFilter(param1,param2)"> <td>{{item.data1}}</td> <td>{{item.data2}}</td> <td>{{item.data3}}</td> <td>{{item.data4}}</td> </tr>
这是一个自定义过滤器的示例
app.filter('customFilter',function (param1,param2) { return function (item) { //return custom stuff here }; });
现在在html中你这样做:
<tr ng-repeat="item in infoData | customFilter(param1,param2)"> <td>{{item.data1}}</td> <td>{{item.data2}}</td> <td>{{item.data3}}</td> <td>{{item.data4}}</td> </tr>