目前我有这段代码
this.save()
.pipe(switchMap(() => this.unlock()))
.subscribe(...);
Run Code Online (Sandbox Code Playgroud)
save和unlock实现是
private save(): Observable<void> {
return new Observable(subscriber => {
this.xmlService.save(..., () => {
...
subscriber.next();
subscriber.complete();
});
});
}
private unlock(): Observable<void> {
return this.httpService.unlock(this.id);
}
Run Code Online (Sandbox Code Playgroud)
由于这unlock并不真正依赖于值save返回,我可以使用吗switchMapTo?
this.save()
.pipe(switchMapTo(this.unlock()))
.subscribe(...);
Run Code Online (Sandbox Code Playgroud)
或者我误解了*To变体的行为方式?
switchMapTo与 相同,switchMap只是它采用可观察值而不是回调函数。查看源代码:
https://github.com/ReactiveX/rxjs/blob/master/src/internal/operators/switchMapTo.ts#L56
| 归档时间: |
|
| 查看次数: |
3604 次 |
| 最近记录: |