如何回到以前的屏幕离子2

hyb*_*Dev 5 html hybrid-mobile-app ionic2 angular

在离子q中,我们将使用$ionichistory.goback()返回上一个屏幕.但在离子2中,我们怎样才能实现这一目标.我点击这个按钮打印控制台消息.但它不起作用.

<ion-buttons left class="loginnavbtn" (click)="goback()">
  CANCEL
</ion-buttons>
Run Code Online (Sandbox Code Playgroud)

.js文件

goback() {
   console.log('Click on button Test Console Log');
}
Run Code Online (Sandbox Code Playgroud)

请帮帮我.我有两个屏幕.当我从第一个屏幕进入下一个屏幕.在下一个屏幕中,我有一个名为back的按钮.当我按下我应该回到第一个屏幕.怎么样?

我的完整代码:

HTML:

<ion-header>
  <!-- use ion-toolbar for a normal toolbar and ion-navbar for navigation -->
  <ion-toolbar>
    <ion-buttons left class="loginnavbtn" (click)="goback()">

    CANCEL
    <!-- left aligned content here -->
    </ion-buttons>

    <ion-title>
      LOGIN
    </ion-title>

    <ion-buttons right class="loginnavbtn" (click)="loginbtntap()">
    SAVE
      <!-- left aligned content here -->
    </ion-buttons>
  </ion-toolbar>
</ion-header>
<ion-content>


   </ion-content>
Run Code Online (Sandbox Code Playgroud)

我的.js:

import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';



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

export class LoginPage {


 goback() {
    this.navCtrl.pop();
}
loginbtntap() {
    this.navCtrl.pop();
}

  constructor(private navCtrl:NavController) {



  }

}
Run Code Online (Sandbox Code Playgroud)

我的.scss:

page-login {
ion-header {
  .button-md {
    box-shadow: none;
  }

  .toolbar-title {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    font-size: 15px;
    font-weight: 500;
  }
}

.loginnavbtn {

  color: #116096 !important;
   font-size: 14px;
    font-weight: 400;
}
}
Run Code Online (Sandbox Code Playgroud)

Sur*_*Rao 13

检查文档中的NavController API.

要转到上一页,请在构造函数中注入navcontroller并调用pop().

constructor(private navCtrl:NavController){}

goback() {
   this.navCtrl.pop();
   console.log('Click on button Test Console Log');
}
Run Code Online (Sandbox Code Playgroud)

还要检查按钮的语法.

<ion-buttons >
    <button ion-button left class="loginnavbtn" (click)="goback()">
      Cancel
    </button>
    <!-- left aligned content here -->
    </ion-buttons>
Run Code Online (Sandbox Code Playgroud)

  • 您也可以在按钮元素中添加`navPop`,例如`<button ion-button left class ="loginnavbtn"navPop>` (3认同)

小智 6

Ionic 中的导航工作方式如下:

1.推送页面:

pageone.ts

import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';
import { PageTwo }from '../pagetwo/pagetwo';

@Component({
  templateUrl: 'pageone.html'
})
export class PageOne {
  constructor(public navCtrl: NavController) {}

  push() {
    this.navCtrl.push(PageTwo);
  }
}
Run Code Online (Sandbox Code Playgroud)

pageone.html

<ion-header>
  <ion-navbar>
    <ion-title>Navigation</ion-title>
  </ion-navbar>
</ion-header>
<ion-content padding>
  <button ion-button block (click)="push()">Push New Page</button>
</ion-content>
Run Code Online (Sandbox Code Playgroud)

2.POP页面:

pagetwo.ts

import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';

@Component({
  templateUrl: 'pagetwo.html'
})
export class PageTwo {

  constructor(public navCtrl: NavController) {}

  pop() {
    this.navCtrl.pop();
  }
}
Run Code Online (Sandbox Code Playgroud)

第二页.html

<ion-header>
  <ion-navbar>
    <ion-title>Page 2</ion-title>
  </ion-navbar>
</ion-header>
<ion-content padding>
  <button ion-button color="secondary" block (click)="pop()">Pop This         
Page</button>
</ion-content>
Run Code Online (Sandbox Code Playgroud)