可并行观察
Observable in parallel
我正在使用 Ionic 3 和 ReactiveX Observable 对象。我通过 AngularFireDatabase
使用方法 valueChanges()
获得了一个 Observable。我想以某种方式过滤它,比如在另一个 Observable 中有一些具有特定属性的对象并对它进行排序。我使用 Observable.forkJoin()
但它不起作用,因为我的闪屏没有隐藏。如果您需要,我可以附上一些代码。或者也许你可以帮我举个例子。谢谢
这是我的代码
Observable.forkJoin([
this.allParticipants = this.participantsList.valueChanges().map(res => res.sort((a, b) => a.name < b.name ? -1 : 1)),
this.paidParticipants = this.allParticipants.map(res => res.filter(guest => guest.paid)),
]).subscribe(() => this.splashScreen.hide(), () => this.splashScreen.hide(), () => this.splashScreen.hide());
我将隐藏方法放在所有参数中,以查找它是否以某些方式隐藏但没有隐藏。
我认为 forkJoin
在这里不起作用,因为它仅在 所有可观察对象完成时才发出 。 valuesChanges()
未完成。使用 combineLatest
或 switchMap
.
我正在使用 Ionic 3 和 ReactiveX Observable 对象。我通过 AngularFireDatabase
使用方法 valueChanges()
获得了一个 Observable。我想以某种方式过滤它,比如在另一个 Observable 中有一些具有特定属性的对象并对它进行排序。我使用 Observable.forkJoin()
但它不起作用,因为我的闪屏没有隐藏。如果您需要,我可以附上一些代码。或者也许你可以帮我举个例子。谢谢
这是我的代码
Observable.forkJoin([
this.allParticipants = this.participantsList.valueChanges().map(res => res.sort((a, b) => a.name < b.name ? -1 : 1)),
this.paidParticipants = this.allParticipants.map(res => res.filter(guest => guest.paid)),
]).subscribe(() => this.splashScreen.hide(), () => this.splashScreen.hide(), () => this.splashScreen.hide());
我将隐藏方法放在所有参数中,以查找它是否以某些方式隐藏但没有隐藏。
我认为 forkJoin
在这里不起作用,因为它仅在 所有可观察对象完成时才发出 。 valuesChanges()
未完成。使用 combineLatest
或 switchMap
.