我找不到仅按标题过滤我的列表的方法。
我的列表是一个由以下对象组成的数组:
{
"userId": 1,
"id": 1,
"title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit",
"body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto"
}
我的html文件中还有一个输入字段
<input type="search" id="search" class="form-control" ng-model="search.title" placeholder="Search by title">
我的控制器正在观看此字段
$scope.$watch('search.title', function(val) {
$log.log($filter('filter')(vm.posts, val));
});
这就是我想要仅通过其标题过滤我的vm.posts(我上面提到的对象列表)的地方。相反,它会被整个对象过滤,body
和title
部分。我知道如何通过filter:search在html文件中执行此操作,但我不知道如何在控制器中执行此操作。
答案 0 :(得分:1)
可以两种方式完成
$scope.$watch('search.title', function(val) {
$log.log($filter('filter')(vm.posts, $scope.search);
});
或强>
$scope.$watch('search.title', function(val) {
$log.log($filter('filter')(vm.posts, {title: val});
});