

打字代码:
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/ '"F:/angular-tour-of-heroes/node_modules/rxjs/Observable"‘/hero.service.ts(2,10):错误观察:模块TS2305没有导出的成员'Observable’。src/TS2304/hero.service.ts(15,12):错误应用程序:找不到名称'of‘。
Angular版本的package.json 文件:

发布于 2018-04-15 17:31:16
我用import { Observable, of } from 'rxjs'替换了原始代码,问题就解决了。


发布于 2018-06-03 06:14:21
显然(正如你在错误日志中指出的),在更新到Angular 6.0.0之后,rxjs-compat丢失了。
运行npm install rxjs-compat --save进行安装。应该能修好它。
发布于 2018-05-27 06:06:39
只需放入:
import { Observable} from 'rxjs';
简单得不得了。不多不少。
https://stackoverflow.com/questions/49840152
复制相似问题