54 votes

ERREUR Erreur: StaticInjectorError (AppModule) [UserformService -> HttpClient]:

Tout en essayant d'ajouter un PrimeNG table je me suis cassé le construire ici: https://github.com/BillyCharter87/Tech-O-Dex-UI/tree/BrokeIt

Je me souviens de la mise à jour de mon package.json de Tapuscrit 2.3.4 2.4.0 et il s'est brisé en raison d' (je pense) le fait que j'ai été en utilisant Headers et Http pour mon POST d'appel. J'ai essayé de réglage arrière à 2.3.4 en vain. J'ai corrigé ce que j'ai pu en ajoutant:

import { HttpClient, HttpHeaders } from "@angular/common/http";

mais toujours en cours d'exécution dans l'Erreur que j'ai maintenant de l' HttpClient. J'ai essayé de les importer HttpClient dans les fournisseurs comme suit: providers: [HttpClient] pour mon application.le module.ts.

L'erreur totale est comme suit:

AppComponent.html:9 ERROR Error: StaticInjectorError(AppModule)[HttpClient -> HttpHandler]: 
StaticInjectorError(Platform: core)[HttpClient -> HttpHandler]: 
NullInjectorError: No provider for HttpHandler!

73voto

Kelvin Lai Points 1389

Assurez-vous que vous avez importé HttpClientModule , au lieu de l'ajout d' HttpClient directement à la liste des fournisseurs.

Voir https://angular.io/guide/http#setup pour plus d'info.

L' HttpClientModule fournit en fait HttpClient pour vous. Voir https://angular.io/api/common/http/HttpClientModule:

Exemple de code:

import { HttpClientModule, /* other http imports */ } from "@angular/common/http";

@NgModule({
    // ...other declarations, providers, entryComponents, etc.
    imports: [
        HttpClientModule,
        // ...some other imports
    ],
})
export class AppModule { }

33voto

Ragulan28 Points 619

Importez-le dans app.module.ts

 import {HttpClientModule} from '@angular/common/http';
 

et ajouter celui-ci dans les importations

 HttpClientModule
 

23voto

Mir-Ismaili Points 1588

Dans mon cas, il fallait:

 @Injectable({
    providedIn: 'root'  // <- ADD THIS
})
export class FooService { ...
 

au lieu de simplement:

 @Injectable()
export class FooService { ...
 

15voto

Sudhansu Points 131

J'ai simplement l'importation en appmodule.ts

 import { HttpClientModule } from '@angular/common/http';
  imports: [
     BrowserModule,
     FormsModule,
     HttpClientModule  <<<this 
  ],
 

Mon problème résolu

10voto

Abdul Jabbar Points 116

Ajouter

 import { HttpClientModule } from '@angular/common/http';
 

dans le fichier app.module.ts . Cela a résolu mon problème.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X