'错误'消息:'属性'来自'在类型' typeof Observable'中不存在

时间:2017-10-29 17:25:03

标签: angular typescript rxjs observable angular2-observables

我正在尝试使用RxJS学习反应式编程。我试图使用 Observable.from()方法从数组中创建一个observable,但我收到一个错误 - ' 属性'来自&#39 ;在类型' typeof Observable' 上不存在。

我使用Angular CLI构建了一个Angular应用程序,因此所有依赖项(包括RxJS包)都已正确导入。

app.component.ts 中,我添加了以下导入语句:

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

我的AppComponent类看起来像这样:

export class AppComponent {

  numbers: number[] = [1, 2, 3, 4, 5];

  callMyObservable() : void {  
    Observable.from(this.numbers);
  }
}  

但是我得到了上面提到的编译时错误。

我不知道如何让它发挥作用......需要帮助!

谢谢, 迪帕克

2 个答案:

答案 0 :(得分:39)

如果您正在使用rxjs> = 6.0.0,则不再使用Observable.from。相反,from是一个独立的函数。

import { Observable, from} from 'rxjs';

//old way
var o = Observable.from([1, 2, 3, 4]);

//new way
var o = from([1, 2, 3, 4]);

我希望这会有所帮助,因为花了我一段时间才弄清楚。

答案 1 :(得分:17)

更改

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

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