rxjs - 使用管道和地图获取可观察的结果
问题描述
我正在尝试在按钮上设置一个可观察对象并将其链接到返回可观察对象的服务。
sydneyHttp$ = new Observable<string>();
this.sydneyHttp$ = fromEvent(this.sydneyServerButton, 'click')
.pipe(
map(() => this.streamService.getStream(1) )
);
我收到此错误,可观察对象包含在可观察对象中:
Type 'Observable<Observable<string>>' is not assignable to type 'Observable<string>'.
我想在一个flatMap
或forkMap
另一个点击请求中使用它。
解决方案
更改为mergeMap将解决问题
sydneyHttp$ = new Observable<string>();
this.sydneyHttp$ = fromEvent(this.sydneyServerButton, 'click')
.pipe(
mergeMap(() => this.streamService.getStream(1) )
);
推荐阅读
- c - 带有 LIS2DE12 加速度计的 SPI
- node.js - NestJS UnhandledPromiseRejectionWarning by Promise
- powerapps - 在 PowerApps 中使用 Slider 更改 DatacardValue,反之亦然
- r - 使用ggplot转换的形状文件中的纬度和经度值越界
- angular - NGRX:在不使用 ngOnChanges 或异步管道的情况下更新子组件的输入属性
- javascript - 清除/重置按钮上的过滤器从活动到非活动 - Angular
- python - AttributeError:“list”对象在制作矩阵时没有“lower”属性
- hadoop - 在 oozie 中使用正则表达式检查文件名格式
- python - 在 Python 中将函数应用于字典
- python - 在不同的 Excel 文件上从我的 PERSONAL.XLSB 运行宏