尝试将switchMap运算符应用于我的Observable时,我收到以下错误消息:



我当前正在使用rxjs版本5.5.2,在我的组件中,我将其导入为:

import 'rxjs/operator/switchMap';

但是,我仍然收到编译错误。我已经看过类似的问题,却没有找到合适的解决方案,关于这里可能出现的问题有什么建议吗?
get appUser$() : Observable<AppUser> {
  return this.user$
    .switchMap(user => {
      if (user) return this.userService.get(user.uid);

      return Observable.of(null);
    });
}

图像:
angular - 属性 &#39;switchMap&#39;在 &#39;Observable&lt;User&gt;&#39;类型上不存在-LMLPHP

最佳答案

如果您使用的是较旧的“补丁”样式的运算符,则应该从rxjs/add/operator/switchMap导入:

import 'rxjs/add/operator/switchMap';

由于RxJS 5.5具有“pipable”运算符,因此您应该从'rxjs/operators'导入:
import { switchMap } from 'rxjs/operators';

关于angular - 属性 'switchMap'在 'Observable<User>'类型上不存在,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48873748/

10-10 10:51