0
經過幾個小時的搜索stackoverflow和谷歌我沒有找到我正在尋找什麼,我找到了一些讓我有一個替代解決方案的想法。Angular2使用RegExp過濾管道對象數組?
對象例如:
items = [
{
title: "This is title",
email: "[email protected]",
status: "confirmed"
},
{
title: "This another one",
email: "[email protected]",
status: "pending"
{
title: "Just a random string",
email: "[email protected]",
status: "pending"
{
]
分辨率:
import { Pipe, PipeTransform } from '@angular/core';
@Pipe({
name: 'filter',
pure: false
})
export class FilterPipe implements PipeTransform {
transform(value: any, args?: any): any {
if(args == '') { return value; }
let query = args.toLowerCase();
return value.filter(task =>
task.title.toLowerCase().indexOf(query) > -1 ||
task.email.toLowerCase().indexOf(query) > -1 ||
task.status.toLowerCase().indexOf(query) > -1
);
}
}
<div *ngFor="item of (items | filter:'this is') ">
{{item | json}}
</div>
這會給我:
{title: "This is title", email: "[email protected]",status: "confirmed"}
它的工作原理是,但我的意圖是使之與正則表達式的工作,我都試過,但由於某種原因,當我使用VAR東西,我得到了一個錯誤=新的RegExp(//一些規則)。
任何想法是非常感激。
你得到什麼錯誤? –
新事物不是功能。 –