2017-11-10 3 views
0

Im neuen Ionic Seite erstellen Name für listing und im hinzugefügt einige Datei seinen Namen listing.service.ts nachdem ich diese listing Seite öffnen kann ich nichtFehler: Uncaught (in Versprechen): Fehler: Kein Anbieter für - ionische 3

Error: Uncaught (in promise): Error: No provider for ListingService! 
Error: No provider for ListingService! 
einige Fehler hatte

Ich versuche, es für mehr als eine Stunde zu reparieren, aber kann keine Lösungen finden, wie man es repariert? Dank Dies ist mein Code

listing.module.ts

import { NgModule } from '@angular/core'; 
import { IonicPageModule } from 'ionic-angular'; 
import { ListingPage } from './listing'; 
import {ListingService} from "./listing.service"; 

@NgModule({ 
    declarations: [ 
    ListingPage, 
    ], 
    imports: [ 
    IonicPageModule.forChild(ListingPage), 
    ], 
    providers: [ 
    ListingService 
    ] 
}) 
export class ListingPageModule {} 

listing.service.ts

import {Injectable} from '@angular/core'; 
@Injectable() 
    export class ListingService { 
     private eventMap:any; 
     constructor() { 
     this.initEventMap(); 
     } 

app.module.ts

import {ListingService} from "../pages/listing/listing.service"; 

const providers = [ ListingService ]; 

@NgModule({ 
    declarations: [ 
    MyApp, 
    HomePage 




    ], 
    imports: [ 
    BrowserModule, 
    IonicModule.forRoot(MyApp), 
    CalendarModule, // Ionic Calendar 

    ], 
    bootstrap: [IonicApp], 
    entryComponents: [ 
    MyApp, 
    HomePage 

    ], 
    providers: [ 
    StatusBar, 
    SplashScreen, 
    {provide: ErrorHandler, useClass: IonicErrorHandler} 
    ] 
}) 
export class AppModule {} 
+0

Warum haben Sie 'const providers = [ListingService];' in app.module.ts? –

+0

Sir im hinzugefügt Listing Seite zu listing.service.ts nachdem ich const Provider = [ListingService] hinzugefügt; – core114

Antwort

1

Sie haben const providers = [ ListingService ]; in app.module.ts aber Sie scheinen nicht das Array irgendwo zu setzen.

Wenn Sie listing.service nur in ListingPageModule verwenden, sollten Sie es als Anbieter in diesem Modul gesetzt (was Sie getan haben.). listing.service Import in app.module.ts So entfernen wie es außerhalb des Moduls ist wo es als Provider festgelegt ist.

+0

Sir etwas fehlt für mich Anbieter: [Provider] – core114

+0

Ich habe dich nicht bekommen? Wo stellst du das hin? –

+0

app.module.ts> 'Anbieter: [ StatusBar, Splashscreen, Anbieter {bieten: Fehlerbehandler, useClass: IonicErrorHandler} ]' – core114

Verwandte Themen