常用方式一:
this.navCtrl.push('LoginPage').then(() => {
let index = this.navCtrl.length() - 2;
this.navCtrl.remove(index);
});
方式一注销登录方法,会导致APP物理返回键的监听失效,无法使用,不推荐使用
方式二:
this.navCtrl.setRoot(LoginPage);
方式二使用时如果项目市带tab导航的,那么会出现一个问题,导航到根组件LoginPage后底部tab仍然存在,如果用一些技术手段将tab隐藏也可以做到,但是当隐藏后继续点击登录以后,会发现虽然页面已经到了tab的第一个页面,但是tab的焦点还在退出之前的的选项卡上面,而没有重新初始化到默认选项卡。
方式三:(推荐使用)
首先都要引入:
import { App } from 'ionic-angular';
然后在constructor内进行声明
private app:App
在注销方法中直接调用:
this.app.getRootNavs()[0].setRoot("LoginPage");