如何在控制器中调用Angular的简单字段过滤器?

时间:2013-08-16 19:58:10

标签: angularjs filter controller

我可以做一个像这样的简单过滤器:

Name Filter: <input ng-model="MyFilter.Name" />
Age Filter: <input ng-model="MyFilter.Age" />

<ul>
  <li ng-repeat="thing in Things | Filter:MyFilter">
    {{thing.Name}} {{thing.Age}}
  </li>
</ul>

我也可以在我的控制器中调用自己的过滤器:

$scope.Things = $filter("MyCustomFilter")($scope.AllThings, params);

这两个都工作正常,但我想将第一个简单的过滤器移动到控制器中,做这样的事情:

$scope.Things = $filter("MyCustomFilter")($scope.AllThings, params);
$scope.Things = $filter("Filter")($scope.Things, $scope.MyFilter);

我的想法是首先调用我的自定义过滤器,然后在结果上调用简单的内置过滤器。我想在控制器中执行此操作,因为我有其他代码需要知道已过滤项目的列表,因此将其保留在html中不是一个选项。

以上代码抛出异常,抱怨循环引用。

在控制器中使用Angular的简单过滤器的正确方法是什么?

谢谢。

0 个答案:

没有答案