0
我有一個使用管道過濾的選擇。選擇看起來是這樣的:Angular2選擇管道執行後
<select ngControl="swimmerz" #swimmer="ngForm">
<option *ngFor="let swimmer of swimmers | swimmerFilter:selectedClub.id:selectedSex" value= {{swimmer.id}}>{{swimmer.name}}</option>
</select>
和過濾器看起來像這樣:
import { PipeTransform, Pipe } from '@angular/core';
import { Swimmer } from './swimmer';
@Pipe({
name: 'swimmerFilter'
})
export class SwimmerFilterPipe implements PipeTransform {
transform(value: Swimmer[], clubid: string, sex: string): Swimmer[] {
clubid = clubid ? clubid.toLocaleLowerCase() : null;
console.log('Filter ClubId parameter: ' + clubid);
console.log('Filter Sex parameter: ' + sex);
return clubid ? value.filter((swimmer: Swimmer) =>
swimmer.clubid.toString() == clubid && swimmer.sex == sex) : value;
}
}
它工作正常。在第一次運行時,select中的第一個游泳運動員被選中。在後續運行中,選項被過濾,但沒有選擇任何選項。如何在管道執行後強制選擇第一個選項?