angular – Ionic无法找到模块’../providers/auth-service/auth-service’

前端之家收集整理的这篇文章主要介绍了angular – Ionic无法找到模块’../providers/auth-service/auth-service’前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图在离子角3.3.0中创建Login / SignUp.
我收到错误找不到模块’../providers/auth-service/auth-service’.在login.ts文件中.请帮忙!

AUTH-service.ts

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

/*
  Generated class for the AuthServiceProvider provider.

  See https://angular.io/docs/ts/latest/guide/dependency-injection.html
  for more info on providers and Angular 2 DI.
*/
export class User {
  name: string;
  email: string;

  constructor(name: string,email: string) {
    this.name = name;
    this.email = email;
  }
}
@Injectable()
export class AuthServiceProvider {
  currentUser: User;
  public login(credentials) {
    if (credentials.email === null || credentials.password === null) {
      return Observable.throw("Please insert credentials");
    } else {
      return Observable.create(observer => {
        // At this point make a request to your backend to make a real check!
        let access = (credentials.password === "pass" && credentials.email === "email");
        this.currentUser = new User('ian','ianlikono@gmail.com');
        observer.next(access);
        observer.complete();
      });
    }
  }
 public register(credentials) {
    if (credentials.email === null || credentials.password === null) {
      return Observable.throw("Please insert credentials");
    } else {
      // At this point store the credentials to your backend!
      return Observable.create(observer => {
        observer.next(true);
        observer.complete();
      });
    }
  }
   public getUserInfo() : User {
    return this.currentUser;
   }

  public logout() {
    return Observable.create(observer => {
      this.currentUser = null;
      observer.next(true);
      observer.complete();
    });
  }
}

login.ts

import { Component } from '@angular/core';
import { NavController,AlertController,LoadingController,Loading,IonicPage } from 'ionic-angular';
import { AuthServiceProvider } from '../providers/auth-service/auth-service';

@IonicPage()
@Component({
  selector: 'page-login',templateUrl: 'login.html',})
export class LoginPage {
  loading: Loading;
  registerCredentials = { email: '',password: '' };

  constructor(private nav: NavController,private auth: AuthServiceProvider,private alertCtrl: AlertController,private loadingCtrl: LoadingController) { }

  public createAccount() {
    this.nav.push('RegisterPage');
  }

  public login() {
    this.showLoading()
    this.auth.login(this.registerCredentials).subscribe(allowed => {
      if (allowed) {        
        this.nav.setRoot('HomePage');
      } else {
        this.showError("Access Denied");
      }
    },error => {
        this.showError(error);
      });
  }

  showLoading() {
    this.loading = this.loadingCtrl.create({
      content: 'Please wait...',dismissOnPageChange: true
    });
    this.loading.present();
  }

  showError(text) {
    this.loading.dismiss();

    let alert = this.alertCtrl.create({
      title: 'Fail',subTitle: text,buttons: ['OK']
    });
    alert.present(prompt);
  }
}

ScreenShot程序结构:

ScreenShot Program structure

解决方法

从您的项目结构中,您的login.ts位于登录文件夹中,登录文件夹位于页面文件夹中.

所以为了到达provider文件夹,你需要写

'../../providers/auth-service/auth-service'

这应该会让你离开两个应该解决问题的文件夹.

猜你在找的Angularjs相关文章