0

すべての項目のリストを提供するエンドポイントに http 要求を送信し、そのリストの最初の要素を取得するために 2 番目の要求を送信する関数が必要です。関数は最後の項目を返す必要があります。次のコードを使用していますが、2 番目の http 要求が機能していません。

getFirstItem(): Observable<any> {
  return this.getList().pipe(concatMap(value => this.getItem(value[0].id)));
}

Angular 7 と rxjs 6.4.0 の使用

どんな助けでも大歓迎です。

編集: 次のスニペットを実行すると、2 番目のコンソール ログが呼び出されません。

getFirstItem(): Observable<any> {
  return this.getList().pipe(
    tap(x => console.log(x)),
    concatMap(value => this.getItem(value[0].id)),
    tap(x => console.log(x)) // never called
}
4

2 に答える 2