如何在javascript中使用filter而不是Html

我正在使用AngularJS,这很好。 我无法在文档中find它 – 这个AngularJSexpression式中Javascript的等价物是什么:

<div>{{ (myList| filter:mySearch).length }}</div> 

谢谢您的帮助。

这是在Angular的filter文档 :

在HTML模板绑定

{{filter_expression | filter:expression}}

在JavaScript中

$ filter('filter')(数组,expression式)

在你的情况下,它会看起来像$filter('filter')(myList, mySearch)

作为替代语法,您也可以直接注入filter,而无需通过$filter服务。 例如,要将filterfilter器注入到控制器中,您可以编写:

 MyCtrl = function($scope, filterFilter) { $scope.filtered = filterFilter(myArray, expression); } 

一个非常类似于如何在控制器中使用filter的问题?

在你的HTML

 <input ng-model="search"> <div ng-repeat="thing in things | filter:searchResults"></div> 

在你的JS里

 $scope.$watch('search', function (newValue, oldValue) { var searchResults = filterFilter($scope.things, $scope.search); });