答案 0 :(得分:15)
对于自定义默认后退按钮操作,您需要覆盖NavBar组件的 backButtonClick()方法。
第1步:在" custom-class.ts" 导入Navbar组件中。创建auxMethod以覆盖默认行为并在ionViewDidLoad方法中调用。
import { Navbar } from 'ionic-angular';
import { ViewChild } from '@angular/core';
export class myCustomClass {
@ViewChild(Navbar) navBar: Navbar;
ionViewDidLoad() {
this.setBackButtonAction()
}
//Method to override the default back button action
setBackButtonAction(){
this.navBar.backButtonClick = () => {
//Write here wherever you wanna do
this.navCtrl.pop()
}
}
}
此代码已在离子3中进行了测试。
答案 1 :(得分:0)
您可以尝试使用ionViewCanLeave
or ionViewWillLeave
事件。
请参阅此issue #9533并提出建议,以区分"返回"导航。一旦实现,这对您的用例非常方便。
答案 2 :(得分:0)
您只需从ViewController堆栈中删除当前索引
从“ ionic-angular”导入{ViewController};
constructor(public navCtrl: NavController, public viewCtrl: ViewController) {
}
this.navCtrl.push("APage").then(() => {
const index = this.viewCtrl.index;
this.navCtrl.remove(index,1);
});