在 ionic 4 中,在硬件后退按钮上按下我想关闭或关闭任何将出现的模态。 我使用了下面给出的代码,这里的条件“if(modal) { modal.dismiss(); }”总是得到满足,即使先前的模态被解雇
constructor(private platform: Platform, private modalCtrl: ModalController) {
this.initializeapp();
}
initializeapp() {
this.platform.registerBackButtonAction(1, async () => {
const modal = await this.modalCtrl.getTop();
if (modal) {
modal.dismiss();
}
});
}
最佳答案
做了一些挖掘,Ionic 注册了一个自定义事件 ionBackButton
来处理硬件后退按钮按下:
管理 Ionic 中所有覆盖的覆盖代码通过关闭最顶层的覆盖来处理此 ionBackButton
事件:
那么您的代码试图实现什么?
它似乎只有在 backdropDismiss
也设置为 true 时才会这样做:
if (lastOverlay && lastOverlay.backdropDismiss) {
我认为这意味着它被归类为可选/低级叠加层,而不是模拟模态。
https://stackoverflow.com/questions/57024833/