首页 > 解决方案 > 'Observable<[{}, {}]>' 类型上不存在属性 'map'

问题描述

我正在尝试在 Angular6 中实现地图、PublishReplay 等,但每次它都会给我编译错误,说“属性 'map' 在类型 'Observable<[{}, {}]>' 上不存在”。当我应用其他 rxjs 东西时,也会发生类似的情况。

我努力了

导入地图,安装 rxjs-compat,编辑 tsconfig.json

  unifiedSearch: Function = (query: string): Observable<UnifiedSearch> => {
    return forkJoin(
      this.searchService.gitSearch(query),
      this.codeSearchService.codeSearch(query)
    ).map((response :[GitSearch,GitCodeSearch])=> {
      return {
        respositories: response[0],
        code: response[1]
      };
    });
  };

如果我试图在“管道”的帮助下实现它,那么它会说我找不到地图。

 unifiedSearch: Function = (query: string): Observable<UnifiedSearch> => {
    return forkJoin(
      this.searchService.gitSearch(query),
      this.codeSearchService.codeSearch(query)
    ).pipe(map((response :[GitSearch,GitCodeSearch])=> {
      return {
        respositories: response[0],
        code: response[1]
      };
    }));
  };

实现地图时出错

标签: angulartypescriptobservable

解决方案


确保你像这样导入地图 -

import { map } from 'rxjs/operators';

并使用管道。


推荐阅读