web-dev-qa-db-fra.com

La propriété 'de' n'existe pas sur le type 'typeof Observable', angular 6?

J'ai mis à jour mon projet 5.2.10 angulaire en angulaire 6.
J'ai fait étape par étape https://update.angular.io/, tout va bien sauf si Observable.from
Dans un service, j'ai utilisé Observable.from(this.user) comme suit:

import { Observable } from 'rxjs/Observable';
...
Observable.from(this.users)// this.users is an array

C'était correct, mais dans l'angle 6, l'erreur suivante s'est produite

Property 'from' does not exist on type 'typeof Observable'

Je l'ai changé comme suit 

import { Observable, from } from 'rxjs';

Mais aucun changement et erreur ne s'est produit à nouveau!

5
Mohammad Dayyan

Dans rxjs @ 6, vous pouvez utiliser from comme fonction autonome:

import { from } from 'rxjs';
...

from(this.users);

ou

import { from as observableFrom } from 'rxjs';
...

observableFrom(this.users);

Voir aussi le guide sur la migration vers rxjs6 

13
yurzui

Sans modifier le code existant, vous pourrez toujours exécuter en installant simplement le paquet "rxjs-compat".

npm install rxjs-compat --save
1
Srini

La version précédente de Rxjs a été remplacée par la version rxjs6. ( Guide de mise à jour de RxJS v5.x à v6 )

Avant rxjs 6

import { Observable } from "rxjs";

let numbers = [1, 5, 10];
let source = Observable.from(numbers);

Avec rxjs 6

import { from, Observable } from "rxjs";

let numbers = [1, 5, 10];
let source = from(numbers);
0
Nipuna