web-dev-qa-db-fra.com

L'opérateur pipe et locable RxJs `map ':' this 'le contexte de type' void 'n'est pas assignable à la méthode' this 'de type' Observable <{}> '

J'ai cet exemple très basique qui utilise l'opérateur de location map avec pipe de [email protected]:

import { map } from 'rxjs/operator/map';

let o = of(1, 2, 3, 4).pipe(
    map((v) => v * 2)
);

Mais cela produit l'erreur Error:(34, 5) TS2684:The 'this' context of type 'void' is not assignable to method's 'this' of type 'Observable<{}>'. Quel est le problème ici?

Les opérateurs d'instance de lettres doivent être importés de rxjs/operators:

import { map } from 'rxjs/operators';

Par opposition aux équivalents non locatifs importés de rxjs/operator:

import { map } from 'rxjs/operator/map';

Pour en savoir plus sur l'opérateur de location, lisez:

147