我的数据库中有两个不同的列中的名字和姓氏,因此我必须以这种方式将其绑定,以便在我的表格中将其显示为1。
但是当我在名字和姓氏之间输入空格时,我的搜索功能无效:
<tbody>
<tr *ngFor="let e of employeelist | filter : searchByName">
<td>{{e.firstName}} {{e.lastName}}</td>
import { Injectable, Pipe, PipeTransform } from '@angular/core';
@Pipe({
name: 'filter'
})
@Injectable()
export class FilterEmployeesPipe implements PipeTransform {
transform(value: any, input: string) {
if (input) {
input = input.toLowerCase();
//filter je filter() metod iz array.prototype.filter
return value.filter(function (employee: any) {
return ((employee.firstName.toLowerCase().indexOf(input)) &&
(employee.lastName.toLowerCase().indexOf(input))) > -1;
})
}
return value;
}
}
答案 0 :(得分:1)
使用这样做
<td>{{e.firstName + ' ' +e.lastName}}</td>
答案 1 :(得分:0)
您需要在用于匹配输入的字符串中包含空格
return (employee.firstName.toLowerCase() + ' ' employee.lastName.toLowerCase()).indexOf(input) > -1;
否则你将苹果与梨进行比较。