Javascript 使用对象相同属性的多个值进行筛选
我有一个名为Javascript 使用对象相同属性的多个值进行筛选,javascript,angularjs,angularjs-ng-repeat,angular-filters,Javascript,Angularjs,Angularjs Ng Repeat,Angular Filters,我有一个名为tasks的对象。它具有多种特性。现在我只想显示状态为待办事项和正在进行的任务。请帮助我如何在ng repeat中应用过滤器 $scope.tasks = [ { 'title': 'task one', 'status': 'to-do' }, { 'title': 'task two', 'status': 'in-progress' }, { 'title': 'task three', 'status': 'completed
tasks
的对象。它具有多种特性。现在我只想显示状态为待办事项
和正在进行的任务
。请帮助我如何在ng repeat
中应用过滤器
$scope.tasks = [
{
'title': 'task one',
'status': 'to-do'
},
{
'title': 'task two',
'status': 'in-progress'
},
{
'title': 'task three',
'status': 'completed'
}
]
<div ng-repeat="task in tasks">
<h1>{{task.name}}</h1>
<p>{{task.status}}</p>
</div>
$scope.tasks=[
{
“标题”:“任务一”,
“状态”:“待办事项”
},
{
“标题”:“任务二”,
“状态”:“正在进行”
},
{
“标题”:“任务三”,
“状态”:“已完成”
}
]
{{task.name}
{{task.status}
您需要为过滤器指定一个自定义函数。
这是一张工作票
代码:
谢谢@Avijit。它对我有用。事实上我是用不同的方式思考的。但这是更好的方法。快乐编码:-)
<div ng-repeat="task in tasks | filter: filteredTasks">
<h1>{{task.name}}</h1>
<p>{{task.status}}</p>
</div>
$scope.filteredTasks = function(task) {
return (task.status === 'to-do' || task.status === 'in-progress') ? true: false;
});
<div ng-repeat="task in tasks | filter:status">
<h1>{{task.name}}</h1>
<p>{{task.status}}</p>
</div>
$scope.status = function(item) {
if (item.status == 'to-do' || item.status == 'in-progress') return true;
}