У меня есть карта переключателей с функцией внутренней карты, которая возвращает несколько obersables, например, так:
this.fb
.getUsersGroupsAsObservable(user.uid, 'contacts')
.switchMap(groups => {
return groups.map(group => this.fb.getJobsbyGroup(group.id));
})
.subscribe(res => {
console.log(res); // emits Observable {_isScalar: false, source: Observable, operator: MapOperator}
this.job$ = res;
});
});
Это выполняется дважды правильно и возвращает две наблюдаемые, например, так:
Observable {_isScalar: false, source: Observable, operator: MapOperator}
Observable {_isScalar: false, source: Observable, operator: MapOperator}
Есть ли способ вернуть список наблюдаемых (думая AngularFireList), который я затем могу визуализировать с помощью асинхронного канала?
Обновление: @concat помог мне получить ответ на этот вопрос (но по причине, что ответ былудален), я обновил свой код следующим образом (теперь он работает отлично):
this.fb
.getUsersGroupsAsObservable(user.uid, 'contacts')
.switchMap(groups =>
combineLatest(groups.map(group => this.fb.getJobsbyGroup(group.id))),
)
.subscribe(res => {
console.log(res);
this.jobs = [].concat.apply([], res);
});