У меня есть код для работы с предстоящими событиями, созданный пользователями. У меня есть возможность для пользователей искать события по имени и местоположению. Для этого я использую mergeMap из rx js, но это не работает. Вот мой код:
upcoming.service.ts
searchByTag(text, type) {
if (type == 'name') {
return this.afs.collection('events').pipe(
filter(data => data.name.toLowerCase().indexOf(text.toLowerCase() > -1))
);
} else if (type == 'location') {
return this.afs.collection('events').pipe(
filter(data => data.location.toLowerCase().indexOf(text.toLowerCase() > -1))
)
}
}
и upcoming.component.ts
val = new FormControl('');
events: any[] = [];
check() {
of('name', 'location').pipe(mergeMap(type => {
return this._upcoming.searchByTag(this.val.value, type);
})).subscribe((data) => {
this.events = data;
})
}