Javascript 离子后退按钮的问题

Javascript 离子后退按钮的问题,javascript,android,cordova,ionic-framework,ionic,Javascript,Android,Cordova,Ionic Framework,Ionic,我的应用程序的后退按钮有问题 起初我以为问题出在科尔多瓦,但我已经确定问题实际上出在爱奥尼亚 我在研究解决方案时发现了以下代码: // Disable BACK button on home $ionicPlatform.registerBackButtonAction(function (event) { if($state.current.name=="app.home"){ navigator.app.exitApp(); } else {

我的应用程序的后退按钮有问题

起初我以为问题出在科尔多瓦,但我已经确定问题实际上出在爱奥尼亚

我在研究解决方案时发现了以下代码:

  // Disable BACK button on home
  $ionicPlatform.registerBackButtonAction(function (event) {
    if($state.current.name=="app.home"){
      navigator.app.exitApp();
    }
    else {
      navigator.app.backHistory();
    }
  }, 100);
但是,它给出了以下错误:

未捕获引用错误:$ionicPlatform未定义

我将该代码放在一个名为
functionAngular.js
的新文档中,并将其添加到
主体
标记的末尾。我必须通知这个职能部门吗

我的问题是:

我希望我的后退按钮将用户发送回导航堆栈中更远的位置,而不是立即关闭应用程序

我很感谢你的帮助

angular.module('EGLISE')

.run(function($ionicPlatform,$state,$ionicHistory){

 $ionicPlatform.registerBackButtonAction(function (event) {
    if($state.current.name=="app.home"){
      navigator.app.exitApp();
    }
    else {
       $ionicHistory.backHistory();
    }
  }, 100);

});

请将functionAngular.js修改为上述代码。

我建议您首先在控制器中添加$ionicPlatform,并在第一个加载的控制器中,测试后退按钮应具有不同操作的每个状态(见下文)

    $ionicPlatform.registerBackButtonAction(function () {
        if ($state.current.name == " login (example) ") {
            ionic.Platform.exitApp();
        }
        if ($state.current.name == " main menu buttons (example) ") {               
            // Sample message "want to exit the application?" (YES/NO)                         
            if (YES) {
                $ionicViewSwitcher.nextDirection('back');
                $state.go(' ????');
            };
        };
        if ($state.current.name == " order (example) ") {               
            // Sample message "want to exit the order?" (YES/NO)                         
            if (YES) {
                $ionicViewSwitcher.nextDirection('back');
                $state.go(' ????');
            };
        };                        
    }, 100);  

请发布FunctionUgular.js文件中的函数是上述函数。请检查您是否将$ionicPlatform作为该函数的参数。此外,如上所述是否正确,文档中不再有任何内容。我知道如果不这样做,是否会将其作为辅助我?我将进行构建并查看结果。只有这样做,才能运行?它仍然不工作,甚至无法抓取事件。查看您的回复,在我看来,ha错误。我的应用程序名称为“EGLISE”未捕获错误:[$injector:nomod]模块“EGLISE”不可用!您要么拼错了模块名,要么忘记加载它。如果注册一个模块,请确保您将依赖项指定为第二个参数。我是半个门外汉,看到这一切,我有很大的困难,它没有拾取的其他代码,甚至事件,都会给我一些帮助,指定放置位置和如何放置?我们需要按下手机本身的按钮,它不会退出应用程序。不应该在手机上测试RegisterBackButton功能。在模拟器中,它确实工作。你在测试手机吗?是的,我在电话和模拟器上进行了测试,在这两个方面他都没有听过事件,退出了应用程序。