angular - 将 Observable 中的参数提供给返回 Observable 的函数

标签 angular rxjs observable rxjs5 behaviorsubject

我有一个具有以下签名的函数:

fetchUserCar(userId: string): Observable<Car>

但是要得到userId参数,我必须调用一个我无法编辑的函数,如下所示:

private user$ = new ReplaySubject < User > ();
public getUser(): Observable < User > {
  return this.user$.asObservable().share();
}

我该如何去做呢?

最佳答案

您需要调用getUser(),然后flatMap调用fetchUserCar传递从getUser()获得的用户ID .

fetchCar(): Observable<Car> {
    this.userService.getUser()
        .flatMap(user => this.carService.fetchUserCar(user.id))
}

关于angular - 将 Observable 中的参数提供给返回 Observable 的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44873641/

相关文章:

rxjs - API 返回一个我需要解析的数组;每个项目一个请求

angular - 顺序订阅一系列可观察对象

css - 如何动态更新 Angular 动画? ( Angular 8)

angular - Ionic 4 Angular - 如何自行关闭模态

android - 我/ Chrome : [INFO:CONSOLE(1)] "ERROR" angular 5 error when called in web view

javascript - D3 和​​更新多维数组的元素

具有转移状态的 Angular 通用 flickring

Angular 2 : Directive Subscribe To Observables of a service

javascript - RxJS - forkJoin 何时触发?

javascript - 从具有 Angular 2 http 调用的函数返回 Promise,该调用返回 Observable