此question and its answers (在下面复制)提供了处理Ionic中后退按钮的解决方案,但该解决方案仅在其他页面直接从app.component
推送时才有效在canGoBack
上调用getActive()
和this.nav
的情况正常,因为其他网页已使用this.nav.push
中的app.component
推送。
但是,如果从标签页中的某个页面推送页面(我们称之为page1
),即通过调用this.navCtrl.push()
中的page1
,然后this.nav.canGoBack()
进入app.components
仍然解析为false,因为使用page1's
this.navCtrl.push()
而不是app.component的this.nav.push()
进行推送。
如果从标签中的任何页面推送页面,我如何检测内部app.components
?
platform.registerBackButtonAction(() => {
if(this.nav.canGoBack()){
this.nav.pop();
}else{
if(this.alert){
this.alert.dismiss();
this.alert =null;
}else{
this.showAlert();
}
}
});
});
}