我想在我的代码上实现这个过滤,但我在实现它时遇到了问题。
我在实现这行代码时出错:
function search(text: string, pipe: PipeTransform): Country[] {
return COUNTRIES.filter(country => {
const term = text.toLowerCase();
return country.name.toLowerCase().includes(term)
|| pipe.transform(country.area).includes(term)
|| pipe.transform(country.population).includes(term);
});
}
我无法更改COUNTRIES.filter,当我尝试在其上放置/替换我的函数时出现错误。我收到此错误“ 'void'类型上不存在属性'过滤器' ”
这是我的代码。
export class MyComponent implements OnInit {
countries: Observable<any[]>;
filter = new FormControl('');
listQuestions = [];
constructor(private extractorService: ExtractorService,
private fstore: AngularFirestore) { }
ngOnInit() {
this.filterFunction();
}
filterFunction(){
this.countries = this.filter.valueChanges.pipe(
startWith(''),
map(text => this.search(text))
);
}
search(text: string): any[] {
return this.sampleFunction().filter(country => {
const term = text.toLowerCase();
return country.caseID.toLowerCase().includes(term)
|| (country.word).toLowerCase().includes(term)
|| (country.product).toLowerCase().includes(term);
});
}
sampleFunction() {
this.extractorService.dbFirestore().subscribe(data => {
this.listQuestions = data.map(x => {
return x.payload.doc.data();
})
})
}
我可以从我的sampleFunction()获取来自 firebase 的所有数据。
顺便说一句,我使用以下代码在 html 上加载数据:
<tr *ngFor="let item of countries | async">
您能帮我将我在sampleFunction()上获得的数据用于指南使用“ return COUNTRIES.filter(country => {”行的搜索功能吗
一只斗牛犬
相关分类