Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如果filter为false,如何在angularjs中过滤多个值(或操作)_Angularjs_Angularjs Ng Repeat_Angular Filters - Fatal编程技术网

如果filter为false,如何在angularjs中过滤多个值(或操作)

如果filter为false,如何在angularjs中过滤多个值(或操作),angularjs,angularjs-ng-repeat,angular-filters,Angularjs,Angularjs Ng Repeat,Angular Filters,使用多个过滤器时遇到一些问题。一个过滤器工作良好,若添加第二个过滤器ng重复使用运算符和获取过滤器,但若第一个为FALSE,我需要使用第二个过滤器 函数Ctrl($scope){ $scope.users=[ {“id”:1,“用户名”:“年龄”:“18”}, {“id”:8,“用户名”:“贝蒂”,“年龄”:“}, {“id”:14,“用户名”:“年龄”:“18”}, {“id”:3,“用户名”:“jumbo1”,“年龄”:“}, ] } {{user.id} 用户:{{Users.leng

使用多个过滤器时遇到一些问题。一个过滤器工作良好,若添加第二个过滤器ng重复使用运算符和获取过滤器,但若第一个为FALSE,我需要使用第二个过滤器

函数Ctrl($scope){
$scope.users=[
{“id”:1,“用户名”:“年龄”:“18”},
{“id”:8,“用户名”:“贝蒂”,“年龄”:“},
{“id”:14,“用户名”:“年龄”:“18”},
{“id”:3,“用户名”:“jumbo1”,“年龄”:“},
]
}

{{user.id}
用户:{{Users.length}}
筛选用户:{{Filtered.length}
为此,您需要在控制器中创建一个简单的过滤器函数。用法可以如下所示,例如:

users | filter:userFilter({username: 'betty', age: 18}
下面是一个演示:

angular.module('demo',[]).controller('Ctrl',Ctrl);
函数Ctrl($scope){
$scope.users=[
{“id”:1,“用户名”:“年龄”:“18”},
{“id”:8,“用户名”:“贝蒂”,“年龄”:“},
{“id”:14,“用户名”:“年龄”:“18”},
{“id”:3,“用户名”:“jumbo1”,“年龄”:“},
];
$scope.userFilter=函数(过滤器){
返回函数(用户){
返回user.username==filter.username | | user.age==filter.age;
};  
};
}

{{user | json}}
用户:{{Users.length}
筛选用户:{{Filtered.length}
对不起,我没什么问题。我有多层JSON,例如{“id”:1,“username”:“,”age:[{“years”:18,“gender:”male“}]}。如何按性别或年份筛选,请尝试使用年龄[0]。年,但什么都没有…我猜
返回user.username==filter.username | | user.age[0]。年==filter.years