私はAngular2のオブザーバブルの周りに頭を浮かべるのに苦労しています。私はobservable forEachの中でobservableに2つのサブスクリプションを持っています。以下のように、それはだ観測可能なサブスクリプションを別の観測可能なサブスクリプションにネストすることは可能ですか?
:
- forEachのルートID(ポーリングID)
- (1でネストされた)を取得購読ルート ID(ポーリングID) を使用して、データベースからの投票を取得します(2内にネスト)
- 購読は ポーリングIDはあなたが起こってネスティングの多くがあります見ることができるよう
をcreatedById使用してデータベースからCREATEDBYのユーザーを取得しますちょうどいい気分にはならない。これを達成するためのよりよい方法がありますか?
poll: Poll;
createdBy: string;
constructor(public route: ActivatedRoute, public teamPollsService: TeamPollsService) { }
ngOnInit(): void {
let id: any;
// 1.
this.route.params.forEach((params: Params) => {
id = params['id'];
// 2.
this.pollService.getPoll(id).subscribe((x) => {
this.poll = x;
// 3.
this.users.getDbUser(x.createdById).subscribe((user) => {
createdBy = `${user.firstName} ${user.lastName}`;
});
});
});
ありがとう:
は、これは私のコードです。代わりに
これは機能しました!私はflatMapの代わりにswitchMapを使用しなければならなかった。ありがとうございました。 – Peza