通过Ionic 4上的硬件后退按钮关闭应用程序

时间:2019-12-15 19:38:38

标签: cordova ionic-framework ionic4

我正在尝试使我的应用程序在“后退”按钮上关闭 我在github中找到了这段代码

 //Called when view is loaded as ionViewDidLoad() removed from Ionic v4
  ngOnInit(){
    this.initializeBackButtonCustomHandler();
  }


  //Called when view is left
  ionViewWillLeave() {
    // Unregister the custom back button action for this page
    this.unsubscribeBackEvent && this.unsubscribeBackEvent();
  }

  initializeBackButtonCustomHandler(): void {
    this.unsubscribeBackEvent = this.platform.backButton.subscribeWithPriority(999999,  () => {
        alert("back pressed home" + this.constructor.name);
    });
    /* here priority 101 will be greater then 100 
    if we have registerBackButtonAction in app.component.ts */
  }

它有效,但是在所有页面上
我只想限制在首页上
我使用了this.constructor.name == HomePage,但也无法使用

1 个答案:

答案 0 :(得分:0)

以上代码有效,但我认为您将其写入错误的位置。订阅主页的OnInit或ionViewDidEnter方法上的BackButton,并取消订阅OnDestroy或ionPageWillLeave。

否则,您不需要那么高的优先级。默认值为零。每个更高的人都会工作。如果在多个页面和组件上使用此Methode,则应考虑优先级逻辑。