我有导入可观察对象的问题。在我的项目中的作用。我的Intellij能看到一切。在我的代码中我有:

import {Observable} from 'rxjs/Observable';

在我的代码中,我这样使用它:

return Observable.of(res);

什么好主意吗?


当前回答

如果有人在使用Angular >= 6和rxjs版本6或更高版本时遇到了这个问题,请参阅这里的答案: 无法使用可观察对象。在RxJs 6和Angular 6中

简而言之,你需要像这样导入它:

import { of } from 'rxjs';

然后不是打电话

Observable.of(res);

只使用

of(res);

其他回答

RxJS 6

当升级到RxJS库版本6且不使用RxJS -compat包时,执行以下代码

import 'rxjs/add/observable/of';   
  // ...
  return Observable.of(res);

要改成什么

import { of } from 'rxjs';
  // ...
  return of(res);

甚至Webstorm也做了这样的import {of} from 'rxjs/observable/of'; 一切都开始运转起来

import 'rxjs/add/observable/of';

显示rxjs-compat的需求

require("rxjs-compat/add/observable/of");

我没有安装这个。安装的

npm install rxjs-compat --save-dev

重新运行解决了我的问题。

不管出于什么原因,补丁对我来说不起作用,所以我不得不求助于以下方法:

import { of } from 'rxjs/observable/of'

// ...

return of(res)

这应该可以正常工作,试试吧。

import { Observable } from 'rxjs/Observable';
import 'rxjs/add/observable/of';