Да, вы можете использовать собственный фильтр с аргументом: | myfilter:conditions
<select ng-model="elb_instance.use_vpc"
ng-if="elb_instance['new_record?']"
ng-options="('Subnet: ' + type) for type in elb_instance.vpc_names_with_subnet_types_for_elb[elb_instance.vpc_name] | myfilter:conditions"
ng-show="elb_instance.vpc_name">
<option value="">Select subnet</option>
</select>
, где myfilter
может быть примерно таким:
app.filter('myfilter', function() {
return function( items, conditions) {
var filtered = [];
angular.forEach(items, function(item) {
if(conditions.aaa == true /* and other rules... */) {
filtered.push(item);
}
else if(conditions.bbb == true){
filtered.push(item);
}
});
return filtered;
};
});
где items
- elb_instance.vpc_names_with_subnet_types_for_elb[elb_instance.vpc_name]