Angular platform.registerBackButtonAction不工作

Angular platform.registerBackButtonAction不工作,angular,ionic2,Angular,Ionic2,我试图在ionic2平台上覆盖angular2中的后退按钮功能。这是我在app.component.ts文件中编写的代码 constructor(platform: Platform,public myapp: IonicApp) { this.pltform=platform; this.app=myapp; platform.ready().then(() => { StatusBar.styleDefault(); Sp

我试图在ionic2平台上覆盖angular2中的后退按钮功能。这是我在app.component.ts文件中编写的代码

constructor(platform: Platform,public myapp: IonicApp) {
    this.pltform=platform;
    this.app=myapp;
    platform.ready().then(() => {
          StatusBar.styleDefault();
          Splashscreen.hide();
          platform.registerBackButtonAction(function(event){
            window.alert("back button pressed");
            let nav = this.app.getActiveNav();
            if (nav.canGoBack()){ //Can we go back?
                  nav.pop();
            }else{
                 this.platform.exitApp(); //Exit from app
            }
         });
    }
}

在“后退”按钮上,只需单击一次即可进入registerBackButtonAction方法。和this.app.getActiveNav()函数;给出未定义的

您正在使用常规函数回调。
指的是函数而不是类。 Ue箭头函数

platform.registerBackButtonAction((event)=>{
            window.alert("back button pressed");
            let nav = this.app.getActiveNav();
            if (nav.canGoBack()){ //Can we go back?
                  nav.pop();
            }else{
                 this.platform.exitApp(); //Exit from app
            }
         });
或者使用
self

let self = this;    
platform.registerBackButtonAction(function(event){
                window.alert("back button pressed");
                let nav = self.app.getActiveNav();
                if (nav.canGoBack()){ //Can we go back?
                      nav.pop();
                }else{
                     this.platform.exitApp(); //Exit from app
                }
             });

此代码是否仅适用于一页或所有页?它应适用于所有页。。平台是整个应用程序的单一对象,您正在注册其back按钮。因此,我希望仅在主页上关闭应用程序。如果使用此代码,它将解决我的问题。它将在应用程序范围内进行更改,因此不会仅针对特定页面,而是在导航到主页后生效。它也适用于android硬件后退按钮,不适用于IOS。
let nav=this.app.getActiveNav()这句话是什么我试过很多次了我在
应用程序上出错了你知道吗