8

After upgrading to angular6 fews problem while using rxjs

import {
  Observable,
  Subject,
  asapScheduler,
  pipe,
  of,
  from,
  interval,
  merge,
  fromEvent
} from "rxjs";

import { delay } from "rxjs/operators";

let obser = from([ 1, 2, 3 ]).delay( 3000 );

Getting Property 'delay' does not exist on type 'Observable'

on angular 5 this works fine

  import { Observable } from 'rxjs/Observable';
  let obser = Observable.from([ 1, 2, 3 ]).delay(3000);
Pascal
  • 2,377
  • 3
  • 25
  • 40
  • 1
    Possible duplicate of [Angular 5 to 6 Upgrade: Property 'map' does not exist on type Observable](https://stackoverflow.com/questions/50203241/angular-5-to-6-upgrade-property-map-does-not-exist-on-type-observable) – Ingo Bürk Jul 20 '18 at 05:04

2 Answers2

18

Angular 6 comes with rxjs 6 which have some differencies. In rxjs 6 you chain operators via pipe:

let obser = from([ 1, 2, 3 ])
    .pipe(
        delay( 3000 )
    );
belicam
  • 732
  • 6
  • 9
1

I am in angular 9 and still 'delay' is not resolved in rxjs 6.*.

import { delay } from 'delay from rxjs/internal/operators';

Here is a quick example code using delay in a mock service:

import { Injectable } from '@angular/core';
import { Observable, of } from 'rxjs';
import { delay } from 'rxjs/internal/operators';

@Injectable()
export class AppService {
  fetchData(): Observable<string> {
    return of('Todo')
    .pipe (
      delay( 1000 )
    );
  }
}
Jai Berman
  • 91
  • 1
  • 6