J'ai un problème avec la Observable.of
fonction d' importation dans mon projet. Mon Intellij voit tout. Dans mon code j'ai:
import {Observable} from 'rxjs/Observable';
et dans mon code je l'utilise comme ça:
return Observable.of(res);
Des idées?
import { of } from 'rxjs'; return of(res);
correctes github.com/ReactiveX/rxjs/blob/master/MIGRATION.md#import-paths & github.com/ReactiveX/rxjs/blob/master/…Réponses:
En fait, j'ai des importations en panne. Dans la dernière version de RxJS, nous pouvons l'importer comme ça:
la source
operator/
-rxjs/add/operator/of
- au lieu deobservable/
. D'oh.Si quelqu'un rencontre ce problème lors de l'utilisation d'Angular 6 / rxjs 6, voir les réponses ici: Impossible d'utiliser Observable.of dans RxJs 6 et Angular 6
En bref, vous devez l'importer comme ceci:
Et puis au lieu d'appeler
juste utiliser
la source
Si vous utilisez Angular 6/7
Et puis au lieu d'appeler
juste utiliser
la source
Bien que cela semble absolument étrange, pour moi, il importait de capitaliser le «O» dans le chemin d'importation de
import {Observable} from 'rxjs/Observable
. Le message d'erreur avecobservable_1.Observable.of is not a function
reste présent si j'importe l'Observable depuisrxjs/observable
. Étrange mais j'espère que cela aide les autres.la source
Mon erreur stupide a été que j'ai oublié d'ajouter
/add
lorsque j'ai demandé l'observable.Était:
Ce qui semble visuellement OK parce que le
rxjs/observable/of
fichier existe, en fait.Devrait être:
la source
Le patch ne fonctionnait pas pour moi, quelle qu'en soit la raison, j'ai donc dû recourir à cette méthode:
la source
Juste pour ajouter,
si vous en utilisez beaucoup, vous pouvez tout importer en utilisant
comme mentionné par @Thierry Templier. Mais je pense que si vous utilisez un opérateur limité, vous devez importer un opérateur individuel comme
comme mentionné par @uksz.
Parce que 'rxjs / Rx' importera tous les composants Rx qui coûtent définitivement les performances.
la source
Vous pouvez également importer tous les opérateurs de cette façon:
la source
import { Observable } from 'rxjs/Observable' import 'rxjs/add/observable/of';
ne fonctionne pas. Fonctionne seulementimport {Observable} from 'rxjs/Rx';
. La version est 5.4.2Observable_1.Observable.of(...).delay(...).timeout is not a function
. Je n'ai pas utiliséimport 'rxjs/add/operator/timeout'
J'utilise Angular 5.2 et RxJS 5.5.6
Ce code n'a pas fonctionné:
Le code ci-dessous a fonctionné:
Méthode d'appel:
Je pense qu'ils pourraient déplacer / modifier la fonctionnalité () dans RxJS 5.5.2
la source
Cela devrait fonctionner correctement, essayez-le.
la source
la source
Mise à niveau de Angular 5 / Rxjs 5 vers Angular 6 / Rxjs 6?
Vous devez modifier vos importations et votre instanciation. Consultez l'article de blog de Damien
Tl; dr:
la source
RxJS 6
Lors de la mise à niveau vers la version 6 de la
RxJS
bibliothèque sans utiliser lerxjs-compat
package, le code suivantdoit être changé en
la source
Pour moi (Angular 5 & RxJS 5), l'importation de saisie semi-automatique suggérée:
tout à devrait être (avec tous les opérateurs statiques
from
,of
, ect fin de travail:la source
J'ai eu ce problème aujourd'hui. J'utilise systemjs pour charger les dépendances.
Je chargeais les Rxjs comme ceci:
Au lieu d'utiliser des chemins, utilisez ceci:
Ce petit changement dans la façon dont systemjs charge la bibliothèque a résolu mon problème.
la source
Pour Angular 5+:
import { Observable } from 'rxjs/Observable';
devrait marcher. Le package observer doit également correspondre à l'importationimport { Observer } from 'rxjs/Observer';
si vous utilisez des observateursimport {<something>} from 'rxjs';
fait une énorme importation, il vaut donc mieux l'éviter.la source
montre une exigence de rxjs-compat
Je ne l'ai pas installé. Installé par
et la réexécution a résolu mon problème.
la source
Dans la
rxjs
v6, l'of
opérateur doit être importé en tant queimport { of } from 'rxjs';
la source
D'une manière ou d'une autre, même Webstorm l'a fait comme ça
import {of} from 'rxjs/observable/of';
et tout a commencé à fonctionnerla source