是否可以在过滤器中编写简单或条件,如下所示?:
formResponse in formResponses | filter: { formName: form } || filter:{ formCategory: formCategory }"
我知道语法错误但逻辑上类似。因此,如果设置了formCategory,它将按照而不是formName进行过滤,如果设置了formName,它将按此过滤而不是formCategory。现在它作为一个条件工作,因此它将按formName和formCategory进行过滤。
答案 0 :(得分:1)
用法:
formResponse in formResponses | customFilter: filter
实现:
angular.module('customFilter', [])
.filter('customFilter', [function () {
'use strict';
return function (items, filter) {
var filtered = [];
angular.forEach(items, function(value, key) {
if (filter.formName}
.....
if (filter.formCategory)
....
if (passes filter criteria)
filtered.push(value);
});
}
return filtered;
};
}]);
答案 1 :(得分:0)
我使用了以下内容:
<span ng-click="category='clinical'; name=''">Clinical Docs</span>
<span ng-click="name='intake'; category=''">Intake</span>
<div ng-repeat='formResponse in formResponses | filter: { formName: name } | filter: { formCategory: category }