我似乎无法让RxJS switchMap返回正确的类型。
打字稿说Type 'T' is not assignable to type 'number'.
如何更改类型以使其正确?
当我将其停止输入时,我的停止/开始计数器就可以正常工作了,但是我想做对了:)
这是在stackblitz上指向live example的链接。
但是实际问题在tap((count: number)
private counter$: Observable<number> = this.isCounting$.pipe(
switchMap(isCounting => isCounting ? this.updateCount() : of(this.count)),
tap((count: number) => {
this.displayCount(count)
})
)
希望Typescript的类型为,但是将鼠标悬停在tap((count: number)
上时会说:
[ts]类型“ MonoTypeOperatorFunction”的参数不能分配给类型“ OperatorFunction”的参数。
参数“源”和“源”的类型不兼容。 类型“可观察”不能分配给类型“可观察”。 类型“ T”不可分配给类型“数字”。 [2345]
更新: TS 2.9.2中没有错误 TS 3.2.2中有错误