如何解决单击硬件后退按钮,Ionic-5应用程序将关闭,而是返回上一页
我正在使用角度7 和离子5 。当我想使用硬件后退按钮重定向到上一页时,ionic应用程序自行关闭。我正在使用以下代码,但无法正常工作。
this.platform.backButton.subscribeWithPriority(9999,() => {
document.addEventListener('backbutton',function (event) {
event.preventDefault();
event.stopPropagation();
console.log('hello');
},false);
});
解决方法
我为此使用指令
import { Directive,HostListener } from '@angular/core';
import { PlatformService } from 'src/app/services/platform';
@Directive({
selector: '[disableBackButton]'
})
export class DisableBackButtonDirective {
constructor(
private platformService: PlatformService
) { }
@HostListener('document:ionBackButton',['$event'])
overrideHardwareBackAction(event: any) {
if (this.platformService.isPlatform('android')) {
event.detail.register(100,async () => {
event.stopImmediatePropagation();
event.stopPropagation();
event.preventDefault();
});
}
}
}
在page.html
<ion-content disableBackButton>
....
</ion-content>
在page.ts
this.platform.backButton.subscribe(() => {
console.log('hello');
});
,
试试这个,
this.platform.backButton.subscribeWithPriority(10,() => {
this.router.navigate(['']); // route to previous page or component
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。