MergeMap返回null

时间:2019-01-23 20:43:33

标签: angular firebase firebase-realtime-database rxjs6

我正在使用Angular6应用,正在从Firebase的实时数据库中获取数据。

要获取用户的个人资料,我将用户的UID(从Observable获取)用作角度服务的参数,该服务返回AngularFireObject <{}>

问题是我试图合并Map和switchMap,但是我没有得到配置文件信息。 (无需订阅内部订阅)

我正在使用AngularFire2从实时数据库中检索数据 RXJS 6 角7.1.2

  1. this.userService.user = angularFireAuth.authState
  2. 在userProfile $中使用“地图”将返回:可观察
  3. 在userProfile $中使用“ mergeMap”返回:null
  4. 在userProfile $中使用“ switchMap”返回:null
  5. “ valueChanges()”返回:Observable <{}>
this.user = this.userService.user.pipe(
      shareReplay(1),
      tap(data => {
        console.log({
          user: data
        })
      })
    )
    this.userProfile$ = this.user.pipe(
      map((data: firebase.User) => this.userService.getUserProfileById(data.uid).valueChanges()),
      tap(data => {
        console.log({
          userProfile: data
        })
      })
    ).subscribe()

我希望从实时数据库中获取一个包含数据的对象(这是预订“ valueChanges()”的结果)。

0 个答案:

没有答案