成功登录失败后导航

时间:2017-01-20 08:56:19

标签: angular login ionic2

我是Ionic 2的新手,我想在登录成功时创建导航,所以我使用了这个:

import { Component } from '@angular/core';
import {Http} from '@angular/http';
import 'rxjs/add/operator/map';
import { NavController } from 'ionic-angular';
import {Page1} from '../page1/page1';

@Component({
  selector: 'page-login',
  templateUrl: 'login.html'
})

export class Login {
  private nav:NavController = null;    
    static get parameters() 
    {
        return [[Http]], [[NavController]];
    }

    constructor(public http:Http, nav: NavController)  
    {
        this.nav = nav;
    }

    login(credentials) 
    {     
            this.http.post(url, UserLogin)
          .map(res => res.json())
            .subscribe((response) => 
            {
                console.log("Welkom");
                this.nav.setRoot(Page1);
                this.nav.popToRoot();
            });   
    }
}

它登录工作没有导航但现在我添加了NavControllers参数,因为其他我见到了错误

  

this.nav未定义

但现在我收到了错误:

  

this.http.post不是函数

我猜错了:

 return [[Http]], [[NavController]];

但我不知道如何解决它。

我想将Page1设置为Rootpage,然后我想导航到它。

还有可能向用户打印一些文字,例如:"密码错误"使用错误或什么?

1 个答案:

答案 0 :(得分:0)

您似乎混合了两种导入方式。

static get Parameters不是必需的

使用基于构造函数的注入而不使用get参数:

  

构造函数(public http:Http,public nav:NavController){}

通过设置公共/私人访问说明符,您不必执行this.nav=nav;