0

我有一个路由解析器,我需要按顺序进行两个方法调用,它们都返回 observables。我不需要对第一次调用的响应做任何事情,但我想将第二次调用中返回的数据返回到路由组件。有人可以给我一个如何做到这一点的例子吗?我想我应该使用 flatMap() 但我似乎无法让它工作。

所以基本上: firstMethod(): Observable -> secondMethod():Observable <--从中返回值。

4

1 回答 1

1

你基本上想要这样的东西:

resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<string> {
      return this.someService.firstCall()
         .switchMap(res => this.someService.secondCall())
   }

map如有必要,您还可以secondCall()使用更具体的值。

于 2017-06-20T00:18:51.607 回答