2016-09-08 6 views
54

So vor kurzem musste ich auf die neueste Version von Angular2, RC.6 aktualisieren. Die größte Änderung scheint das gesamte Bootstrapping zu sein (durch "Einführung" von ngModule).Kein Provider für ConnectionBackend

@NgModule({ 
    imports: [HttpModule, BrowserModule, FormsModule], 
    schemas: [CUSTOM_ELEMENTS_SCHEMA], 
    declarations: [AppComponent, ...], 
    providers: [FrameService, Http, { provide: $WINDOW, useValue: window }], 
    bootstrap: [AppComponent] 
}) 
class AppModule { 

} 

platformBrowserDynamic().bootstrapModule(AppModule); 

jedoch nach vielen Tränen, Schweiß und flehend an alle Gottheiten konnte ich komme mit ... ich noch mit bleiben, was hoffentlich ist der letzte Fehler in einer Reihe von vielen:

Kein Anbieter für ConnectionBackend!

An diesem Punkt reiße ich die letzten Haarsträhnen aus, die ich noch habe, da ich an diesem Punkt keine Ahnung habe, was "was mir fehlt".

Mit freundlichen Grüßen!

+2

Sieht gut aus. Sie sollten 'Http' nicht in' providers' benötigen, da es bereits von 'imports' bereitgestellt wird. [HttpModule] '. –

Antwort

95

Http ist redundant in

providers: [FrameService, Http, { provide: $WINDOW, useValue: window }], 

weil HttpModule in

imports: [HttpModule, BrowserModule, FormsModule], 

bietet es bereits.

+1

Sie sind sich dieses Problems bewusst und werden ständig verbessert. Ich gehe davon aus, dass sich Angular2 nach der Stabilisierung von Angular2 noch mehr an der Verbesserung der Entwicklererfahrung mit besseren Fehlern und der richtigen Werkzeugunterstützung wie Überprüfung der Vorlagen auf Syntaxfehler und andere Probleme, Designer und andere Tools, die ein Entwicklerleben erleichtern, arbeiten wird. –

1

In app.module.ts hinzufügen:

import { HttpModule } from '@angular/http'; 

Und Import-Modul:

imports: [ 
    ... 
    HttpModule 
    ... 
    ], 
0

I entfernt 'Http' aus diesem Import wie folgt und es für mich gearbeitet. Auch Browsermodul muss vor HttpModule in den Modulimports kommen.

Bevor:

import {Httpmodule, Http} von '@ Winkel/http';

After:

import {Httpmodule} von '@ Winkel/http';

+0

Definieren Sie ein Beispielszenario aus Ihren vorgeschlagenen "einigen Szenarien" ... wenn Ihre Antwort nicht bereits von [Günter Zöchbauer] bereitgestellt wird (https://stackoverflow.com/users/217408/g%c3%bcnter-z%c3% b6chbauer) und wird wahrscheinlich in naher Zukunft entfernt werden. Wir sind hier, um die gleiche Information zweimal zu lernen und nicht zu lesen (sprich: Wiederholungsjagd). – ZF007

Verwandte Themen