【发布时间】:2018-09-25 04:19:43
【问题描述】:
打字稿代码:
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"' 没有 导出成员“可观察”。 src/app/hero.service.ts(15,12):错误 TS2304:找不到名称“of”。
package.json Angular 版本的文件:
【问题讨论】:
-
您使用的框架名为 Angular。 AngularJS 是一个不同的框架。
-
看来您使用的是 RxJS 6。使用该版本时需要更改导入(请参阅发行说明)。如果你不使用 Angular 6,那么你应该坚持使用 RxJS 5。
-
谢谢。我正在使用 Angular6.0 ~
-
这里是相关文档:next.angular.io/guide/rx-library。请注意,导入的不是您正在使用的。
标签: angular typescript rxjs angular6 rxjs6