Angular - “没有导出的成员'Observable'”

新手上路,请多包涵

代码

错误信息

打字稿代码:

 import { Injectable } from '@angular/core';
import { Observable } from 'rxjs/Observable';
import { of } from 'rxjs/observable/of';
import { Hero } from './hero';
import { HEROES } from './mock-heroes';

@Injectable({
  providedIn: 'root'
})
export class HeroService {

  constructor() { }

  getHeroes(): Observable<Hero[]> {
    return of(HEROES);
  }

}

错误信息:

错误 TS2307:找不到模块 ‘rxjs-compat/Observable’。 node_modules/rxjs/observable/of.d.ts(1,15):错误 TS2307:找不到模块 ‘rxjs-compat/observable/of’。 src/app/hero.service.ts(2,10):错误 TS2305:模块 ‘“F:/angular-tour-of-heroes/node_modules/rxjs/Observable”’ 没有导出的成员 ‘Observable’。 src/app/hero.service.ts(15,12):错误 TS2304:找不到名称“of”。

package.json Angular 版本的文件:

版本

原文由 Thomas Lee 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 685
2 个回答

我把原来的代码换成了 import { Observable, of } from 'rxjs' ,问题就解决了。

在此处输入图像描述

在此处输入图像描述

原文由 Thomas Lee 发布,翻译遵循 CC BY-SA 3.0 许可协议

赶紧跑

npm i rxjs-compat

这对我有用。

原文由 hash 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进