在离子q中,我们将使用$ionichistory.goback()
返回上一个屏幕。但在离子2中,我们怎样才能实现这一目标。我点击这个按钮打印控制台消息。但它不起作用。
<ion-buttons left class="loginnavbtn" (click)="goback()">
CANCEL
</ion-buttons>
的.js
goback() {
console.log('Click on button Test Console Log');
}
请帮帮我。我有两个屏幕。当我从第一个屏幕进入下一个屏幕。在下一个屏幕中,我有一个名为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>
我的.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) {
}
}
my .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;
}
}
答案 0 :(得分:13)
检查文档中的NavController API。
要转到上一页,请在构造函数中注入navcontroller并调用pop()
。
constructor(private navCtrl:NavController){}
goback() {
this.navCtrl.pop();
console.log('Click on button Test Console Log');
}
同时检查button的语法。
<ion-buttons >
<button ion-button left class="loginnavbtn" (click)="goback()">
Cancel
</button>
<!-- left aligned content here -->
</ion-buttons>
答案 1 :(得分:4)
Ionic中的导航工作方式如下:
<强> 1。 PUSH Page:
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);
}
}
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>
2.POP Page:
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();
}
}
pagetwo.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>
答案 2 :(得分:0)
import { Location } from "@angular/common";
constructor(private location: Location) { }
goBack(){
this.location.back();
}