Мы не можем выполнять события кнопки назад, ионные с угловыми на платформе Android.
Когда я нажимаю кнопку «Несколько раз» на кнопке «Назад», мы получаем несколько раз оповещений.
Как мы выполняем кнопку на определенных страницах с определенными окнами оповещений, и когда я нажимал кнопку «Назад», существующуюокно оповещения или контроллер отклонены.
Пожалуйста, обратите внимание на применяемый код. app.component.ts
Спасибо
import { Component,ViewChildren,QueryList} from '@angular/core';
import {Platform} from '@ionic/angular';
import {MenuController, NavController,LoadingController,IonRouterOutlet} from '@ionic/angular';
import {ToastController,ModalController,AlertController} from '@ionic/angular';
import {Router} from '@angular/router';
export class AppComponent {
@ViewChildren(IonRouterOutlet) routerOutlets: QueryList < IonRouterOutlet > ;
ngOnInit() {
this.backButtonHandler()
}
backButtonHandler() {
this.platform.backButton.subscribeWithPriority(99999, async() => {
// close action sheet
// this.alertBook.dismiss();
try {
const element = await this.alertCtrl.getTop();
if (element) {
element.dismiss();
return;
}
} catch (error) {}
// close side menu
try {
const element = this.menuCtrl.getOpen();
if (element !== null) {
this.menuCtrl.close();
return;
}
} catch (error) {
}
this.routerOutlets.forEach((outlet: IonRouterOutlet) => {
if (outlet && outlet.canGoBack()) {
outlet.pop();
} else if (this.router.url === '/home') {
console.log("trigger home");
this.createAlert();
} else if (this.router.url === '/contact') {
console.log("trigger contact");
this.contactAlert();
}
});
});
}