除自由文本搜索外,AngularJS过滤器完全匹配

时间:2015-11-05 15:25:49

标签: angularjs angularjs-filter

AngularJS docs(https://docs.angularjs.org/api/ng/filter/filter)有一个非常明确的例子,说明如何将它们的过滤器与比较器一起使用,以便通过在过滤器上设置:true来进行精确匹配

ng-repeat="task in tasks  | filter:search:true

问题在于我在搜索对象上搜索(根据他们的示例),其中一个搜索过滤器是自由文本搜索。 如何才能将严格搜索应用于我的其他搜索过滤器,而不是我的自由文本搜索。

所以坚持他们的榜样。看下面的

<label>Any: <input ng-model="search.$"></label> <br>
<label>Name only <input ng-model="search.name"></label><br>
<label>Phone only <input ng-model="search.phone"></label><br>

如何将严格过滤应用于search.name和search.phone,但不能搜索。$

注意:在我的代码中,我没有search.name和search.phone作为文本输入,而是作为下拉选择,这就是为什么我希望它们是严格的。

请指教 感谢

1 个答案:

答案 0 :(得分:1)

  • 应用多个过滤器:

    ng-repeat =“任务中的任务|过滤器:{'$':搜索。$} |过滤器:{'phone':search.phone}:true | filter:{'name':search.phone}:真

  • 制作自己的过滤器:

    ng-repeat =“任务中的任务| myfilter:search app.filter( 'myfilter')