2017-04-26 94 views
0

我想一個提供程序添加到我的應用程序,但得到這個錯誤ionic2提供商「無法加載模塊」

未捕獲的錯誤:無法找到模塊「../providers/login/loginservice」

項目結構

this is my project structure

這裏是app.module.ts外觀

import { BrowserModule } from '@angular/platform-browser'; 
import { ErrorHandler, NgModule } from '@angular/core'; 
import { IonicApp, IonicErrorHandler, IonicModule } from 'ionic-angular'; 
import { SplashScreen } from '@ionic-native/splash-screen'; 
import { StatusBar } from '@ionic-native/status-bar'; 
import { HttpModule} from '@angular/http'; 


import { MyApp } from './app.component'; 
import { HomePage } from '../pages/home/home'; 
import { Loginpage } from '../pages/loginpage/loginpage'; 

import { Loginservice } from '../providers/login/loginservice'; 


@NgModule({ 
    declarations: [ 
    MyApp, 
    HomePage, 
    Loginpage 
    ], 
    imports: [ 
    BrowserModule, 
    IonicModule.forRoot(MyApp) 
    ], 
    bootstrap: [IonicApp], 
    entryComponents: [ 
    MyApp, 
    HomePage, 
    Loginpage 
    ], 
    providers: [ 
    StatusBar, 
    SplashScreen, 
    Loginservice, 
    {provide: ErrorHandler, useClass: IonicErrorHandler} 
    ] 
}) 
export class AppModule {} 

loginpage.ts在那裏我嘗試使用提供商

import { Component } from '@angular/core'; 
import { IonicPage, NavController, NavParams } from 'ionic-angular'; 
import { Loginservice } from '../../providers/login/loginservice'; 

/** 
* Generated class for the Loginpage page. 
* 
* See http://ionicframework.com/docs/components/#navigation for more info 
* on Ionic pages and navigation. 
*/ 
@IonicPage() 
@Component({ 
    selector: 'page-loginpage', 
    templateUrl: 'loginpage.html' 
    }) 
export class Loginpage { 

    constructor(public navCtrl: NavController, public navParams: NavParams,public loginservice : Loginservice) { 
    } 

    ionViewDidLoad() { 
    console.log('ionViewDidLoad Loginpage'); 
    } 
    login(){ 
    console.log("inside Login"); 
    //this.loginservice.doLogin(); 
    } 

} 

*更新:添加login服務代碼。

import { Injectable } from '@angular/core'; 
import { Http } from '@angular/http'; 
import 'rxjs/add/operator/map'; 

/* 
    Generated class for the Loginservice provider. 

    See https://angular.io/docs/ts/latest/guide/dependency-injection.html 
    for more info on providers and Angular 2 DI. 
*/ 
@Injectable() 
export class Loginservice { 

    constructor(public http: Http) { 
    console.log('Hello Loginservice Provider'); 
    } 

} 

我無法找到任何解決方案。 我試着改變路徑並再次移除並添加提供程序。 截至目前,提供商沒有任何功能,因爲我試圖成功導入它。

錯誤截圖

enter image description here

請指引我。

感謝 思魯提奈爾

+0

loginservice.ts根本沒有任何代碼..?或者你有文件中的導出功能,仍然得到這個錯誤..? –

+0

@raja:我也添加了loginservice文件,它具有導出功能 –

+0

您是否嘗試重新啓動您的離子服務? – JoeriShoeby

回答

0

你在上面的鏈接

在src /供應商目錄中提供的代碼看你有loginservice.ts文件,但在loginpage.ts您導入

import { Loginservice } from '../../providers/login/loginservice'; 

沒有登錄目錄,所以進口應該是

import { Loginservice } from '../../providers/loginservice'; 

請改變它在app.module.ts文件以及

import { Loginservice } from '../providers/loginservice'; 

希望這可以幫助您,謝謝。