我希望有一个通用字段过滤器,将过滤器函数作为参数并在filter
中使用
import {Injectable, Pipe, PipeTransform} from '@angular/core';
@Pipe({
name: 'FieldsFilter'
})
@Injectable()
export class FieldsFilter implements PipeTransform {
transform(fields: any[], args: any[]): any {
return fields.filter(args[0]);//pass function to filter
}
}
所以我可以在具有不同过滤功能的多个地方使用它。
如何通过过滤功能?
答案 0 :(得分:5)
@Pipe({
name: 'FieldsFilter'
})
@Injectable()
export class FieldsFilter implements PipeTransform {
transform(fields: any[], f): any {
return fields.filter((e) => f(e));
}
}
很久以前它被改变了,额外的管道参数被传递给单个参数而不是作为数组形式的单个参数。