【发布时间】:2019-08-05 15:08:45
【问题描述】:
调用一个依赖于另一个订阅方法的订阅
结构:
this.example1().subscribe(res => {
this.response = res;
})
example1(): Observable<any> | any {
this.example2().pipe(
catchError(err => {
return throwError(err);
})
).subscribe(res => {
return of(res);
});
}
example2(): Observable<any> | any {
this.example3().pipe(
catchError(err => {
return throwError(err);
})
).subscribe(res => {
return of(res);
});
}
example3() {
return of('return from example 3');
}
现在出现错误“无法读取未定义的属性‘管道’”
example3() 正确返回值,但从 example2 值没有返回到示例 1
【问题讨论】:
-
example2()不返回任何内容。 -
example1()也没有 -
@denajan,当一个 observable 依赖另一个时,你必须使用 switchMap
-
嗨,我从 example1() 和 example2() 返回了值。但仍然没有运气