Impossible de trouver le '@angulaire/common/http' module
Je suis cette fondamentaux tutoriel sur Angulaire sur Http.
Comme on peut le voir dans le "programme d'Installation de: l'Installation d'un module de section, ils importent les HttpClientModule comme suit:
import {HttpClientModule} from '@angular/common/http';
Quand j'essaie dans mon projet, j'obtiens l'erreur suivante: "Impossible de trouver le module '@angulaire/common/http'".
J'ai essayé d'importer le module suivant, comme suit:
import { HttpModule } from '@angular/http';
Et puis mon importations section:
imports: [
HttpModule
],
Le problème maintenant est que je ne peut pas injecter HttpModule dans mon service de l'objet, et j'obtiens l'erreur suivante: "Impossible de trouver le module HttpModule".
Voici ma classe de service:
import { Injectable, OnInit } from '@angular/core';
//Custom Models
import { Feed } from '../Models/Feed';
@Injectable()
export class FeedsService {
constructor(private httpClient: HttpModule) {}
}
Ce que je fais mal?
Mise à jour
Tous je l'ai fait quand j'ai réalisé que je ne pouvais pas importer le module comme pour le tutoriel, était de lancer le npm update
commande, pour mettre à jour tous mes paquets.
- voir cette réponse pour la différence entre
Http
etHttpClient
Vous devez vous connecter pour publier un commentaire.
Important:
HttpClientModule
est Angulaire 4.3.0 et au-dessus. Vérifier @Maxime commentaires et @Pengyy s réponse pour plus d'info.Réponse originale à cette question:
Vous avez besoin d'injecter
HttpClient
dans votre composant/service qui n'est pas le module. Si vous importezHttpClientModule
dans votre@NgModule
Donc changer
à
comme il a été écrit dans la documentation: https://angular.io/guide/http#making-a-request-for-json-data
Cependant, depuis l'importation de la HttpModule
vous avez besoin d'injecter
constructor(private httpClient: Http)
comme @Maximus indiqué dans les commentaires et @Pengyy dans cette réponse.Et pour plus d'infos sur les différences entre
HttpModule
etHttpClientModule
, cochez cette réponse: https://stackoverflow.com/a/45129865/5706293Http
-constructor(private httpClient: Http)
depuis qu'il à l'importation'@angular/http'
, pas'@angular/common/http'
HttpModule
mais en essayant d'utiliserHttpClient
vous devez sélectionner 1Mise À Jour Importante:
HttpModule
etHttp
de@angular/http
a été obsolète depuis Angulaire V5, doit à l'aide deHttpClientModule
etHttpClient
de@angular/common/http
au lieu de cela, reportez-vous CHANGELOG.Angulaire version précédente à partir de **@4.3.0, Vous devez injecter
Http
de@angular/http
, etHttpModule
est pour l'importation à votre NgModule d'importation du tableau.Injecter
http
au composant ou serviceAngulaire version après(inclure) 4.3.0, vous pouvez utiliser
HttpClient
de@angular/common/http
au lieu deHttp
de@angular/http
. N'oubliez pas d'importerHttpClientModule
à votreNgModule
s'importation de tableau en premier.Référer @echonax de réponse.
HttpClient
, ou peut-être que je l'ai raté, mais n'a pas encore trouvé après un peu de recherche rapide. u peut me donner un lien?Http
etHttpClient
note: C'est pour @angulaire/http, pas l'demandé à @angulaire/common/http!
Il suffit d'importer de cette façon, FONCTIONNE parfaitement:
et puis vous contruct dans le service.ts comme ceci:
J'ai été en utilisant http angulaire 5 qui a un problème.
À l'aide de Httpclient résolu le problème.
Méfiez-vous des imports. mon HTTP_INTERCEPTORS a été auto importées comme ceci:
au lieu de
qui a provoqué cette erreur
Vous devez importer
http
de@angular/http
à votre service:Pour toute personne utilisant les Ionique 3 et Angulaire 5, j'ai eu le même message d'erreur pop-up et je ne trouve pas de solutions ici. Mais j'en ai trouvé quelques étapes qui ont travaillé pour moi.
Étapes pour reproduire:
ionique:(exécuter ionique info à partir d'un terminal/invite de cmd), vérifier les versions et assurez-vous qu'ils sont à jour. Vous pouvez également vérifier l'angle de versions et les paquets dans le package.json dossier de votre projet.
J'ai vérifié mes dépendances et des paquets, et installé à cordoue. Redémarrage de l'atome et l'erreur a disparu. Espérons que cette aide!
Reportez-vous à ceci:
http: déprécier @angulaire/http en faveur de @angulaire/common/http.
Ce problème est-il résolu.
J'obtiens cette erreur:
ERREUR dans node_modules/ngx-restangular/lib/ngx-restangular-http.d.ts(3,27): erreur TS2307: Impossible de trouver le module '@angulaire/common/http/src/réponse".
Après la mise à jour de mon angulaire de version=8