手记

angularjs1.x+ionic1.x 实现"再按一次退出系统"

一、安装插件

cordova plugin add cordova-plugin-x-toast

二、配置

将app.js中run函数改写成如下“双击退出”以下代码为新增改写代码,同时需要增加$rootScope,$location,$cordovaToast这两个参数。

.run(function($ionicPlatform,$rootScope, $location,$cordovaToast) {
  $ionicPlatform.ready(function() {    if(window.cordova && window.cordova.plugins.Keyboard) {
      cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
      cordova.plugins.Keyboard.disableScroll(true);
    }    if(window.StatusBar) {
      StatusBar.styleDefault();
    }
  });  //双击退出
  $ionicPlatform.registerBackButtonAction(function(e) {    //判断处于哪个页面时双击退出
    var $thisPath = $location.path();    if ('/home' == $thisPath) {      if ($rootScope.backButtonPressedOnceToExit) {
        ionic.Platform.exitApp();
      } else {
        $rootScope.backButtonPressedOnceToExit = true;
        $cordovaToast.showShortCenter('再按一次退出系统');
        setTimeout(function() {
          $rootScope.backButtonPressedOnceToExit = false;
        }, 2000);
      }
    } else {
      history.go(-1);
    }
    e.preventDefault();    return false;
  }, 101);

});

三、备注

经过上述配置,就已经可以了'/home' == $thisPath为在哪个页面触发效果。



作者:Hank_谢旱
链接:https://www.jianshu.com/p/f66406816c3f


0人推荐
随时随地看视频
慕课网APP