首页 > 解决方案 > 导入 Rxjs 包不起作用

问题描述

升级到 Angular@5.x 后,我的 Rxjs 导入不再有效。例如,下面的代码段以前可以工作,但 Angular 现在抱怨它找不到 Observable 和间隔。

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

private startMaquee() {
let index = 0;

private startMaquee() {    
  var marqueeInterval = interval(5000);
  let ndx = 1;
  marqueeInterval.subscribe(() => {
    this.marquee = this.marquees[ndx++];

    if(ndx == this.marquees.length) {
      ndx = 0;
    }
  })
}

标签: angularrxjs

解决方案


在 RxJS 6+ 中,通过导入intervalObservable简单地从'rxjs'并简单地使用interval作为方法而不是实例方法来尝试以下操作Observable

import { Observable, interval } from 'rxjs';

const marqueeInterval: Observable<number> = interval(5000);

您将从中导入,rxjs而不是Observable/rxjs使用 RxJS 6+。

这是一个简单的StackBlitz,演示了实际的功能interval导入。

希望这会有所帮助!

谢谢!


推荐阅读