打字稿错误:“.....”类型的“this”上下文无法分配给方法的“this”类型

问题描述 投票:0回答:1
orgChangedSuccess$: Observable<Action> = this.actions$
    .ofType(orgActions.UPDATE_ORG_SUCCESS)
    .map(toPayload)
    .switchMap((org) => {
        return Observable.combineLatest(
            this.dataChallenge.challengeList$.filter((val) => val !== null),
            this.dataMetric.metrics$.filter((val) => val !== null),
        )
    })
    .switchMap((data) => <Observable<dataActions.Actions>>Observable.of(new dataActions.DataRetrieved()))

我遇到了这种打字稿错误。看起来这是由于将非异步函数传递给需要异步函数的方法所致。如何解决此错误?是否有任何 VS Studio Code 扩展可以帮助快速修复这些类型的错误?

这是一个旧的 ionic/Angular 应用程序,已经多年没有开发了。花了一些时间来解决所有弃用/版本控制问题,现在我无法构建,因为这些类型的打字稿错误必须归因于预期的异步/非异步类型。

typescript rxjs ngrx-effects
1个回答
0
投票

filter
是一种javascript数组方法,它设置在可能存在问题的可观察量上,而是使用rxjs运算符
filter
来过滤掉可观察到的排放。

orgChangedSuccess$: Observable<Action> = this.actions$
    .ofType(orgActions.UPDATE_ORG_SUCCESS)
    .map(toPayload)
    .switchMap((org) => {
        return Observable.combineLatest(
            this.dataChallenge.challengeList$.pipe(filter((val) => val !== null)),
            this.dataMetric.metrics$.pipe(filter((val) => val !== null),
        ))
    })
    .switchMap((data) => <Observable<dataActions.Actions>>Observable.of(new dataActions.DataRetrieved()))
© www.soinside.com 2019 - 2024. All rights reserved.