我和观察者有点关系,我对他们有愚蠢的问题。
我的商店里有2个可观察物:
@select() fiches;
@select() langs;
现在我想过滤fiches,但取决于可观察的langs。 我试过这样的事情:
private getFiches(): Observable<Fiche[]> {
return this.fiches
.map(fiches => fiches.filter(fiche => fiche.lang === this.langs.lang))
.do(fiches => console.log(fiches));
}
但显然它不能那样工作。
export interface Fiche {
id: number;
lang: string;
translation: string;
}
export interface Langs {
lang: string;
}
答案 0 :(得分:0)
您可以使用combineLatest
:
private getFiches(): Observable<Fiche[]> {
return Observable.combineLatest(this.fiches, this.langs)
.map(([fiches, langs]) => fiches.filter(fiche => /* … */));
}
我遗漏了/* … */
,因为我不清楚你想如何过滤“数组中的数组”,但假设你这样做,那就是你可以做到的。