web-dev-qa-db-fra.com

Impossible d'utiliser Observable.of dans les RxJs 6 et Angular 6

 import { Observable, of } from "rxjs";

// And if I try to return like this
  return Observable.of(this.purposes);

Je reçois une erreur indiquant que la propriété 'de' n'existe pas sur le type 'typeof Observable'

54
k harish

On dirait que le commentaire de cartant est correct, le Guide de mise à jour de RxJS ne couvre pas cette méthode en particulier, mais dit "Les classes qui fonctionnent sur des observables ont été remplacées par des fonctions"

Ce qui semble vouloir dire que toutes ou la plupart de ces méthodes de classe comme .of, .throw, etc. ont été remplacées par une fonction

Donc au lieu de

import { Observable, of } from "rxjs";
Observable.of(this.purposes);

faire

import { of } from "rxjs";
of(this.purposes);
102
tim545

rxjs 6

import { PreloadingStrategy, Route } from '@angular/router';
import { Observable, of } from 'rxjs';

export class SelectivePreloadingStrategy implements PreloadingStrategy {
    preload(route: Route, load: Function): Observable<any> {
       return route.data && route.data.preload === false ? of(null) : load();
    }

 }
4
Tiny King

Pour éviter le peluchage de la liste noire du rxjs , importez-les comme ceci:

import { Observable } from 'rxjs/Observable';
import { of } from 'rxjs/observable/of';
0
Tito Leiva