如何在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
服务。 例如,要将filter
器filter
器注入到控制器中,您可以编写:
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); });