三步实现ionic3点击退出app程序


Posted in Javascript onSeptember 17, 2019

本文实例为大家分享了ionic3点击退出app程序的具体代码,供大家参考,具体内容如下

其实也很简单。大概分为三步

1.tabs.ts文件需要声明一下

@ViewChild('mainTabs') tabs:Tabs;//声明tabs组件(<ion-tabs #mainTabs >)

2.app.component.ts文件

@ViewChild('myNav') nav: Nav;//声明根组件(<ion-nav #myNav [root]="rootPage">)

3.贴代码  

platform.ready().then(()=>{
this.exitApp();
})
public backButtonPressed: boolean = false;
exitApp() {
  this.platform.registerBackButtonAction(() => {
   //控制modal、系统自带提示框
   let overlay = this.appCtrl._appRoot._overlayPortal.getActive() ||  this.appCtrl._appRoot._modalPortal.getActive();
   if (overlay) {
    overlay.dismiss();
    return;
   }
   let activeVC = this.nav.getActive();
   let page = activeVC.instance;
   if (page.tabs) {
    let activeNav = page.tabs.getSelected();
    if (activeNav.canGoBack()) {
     return activeNav.pop();
    } else {
     return this.showExit();
    }
   }
   if (page instanceof LoginPage) {//查看当前页面是否是登陆页面
    this.showExit();
    return;
   }
   this.appCtrl.getActiveNav().pop();//剩余的情况全部使用全局路由进行操作 
  });
 }
 
 //双击退出函数
 showExit() {
  if (this.backButtonPressed) {
   this.platform.exitApp();
  } else {
   this.presentToast();//再按一次退出
   this.backButtonPressed = true;
   setTimeout(() => {
    this.backButtonPressed = false;
   }, 2000)
  }
 }
 presentToast() {
  let toast = this.toastCtrl.create({
   message: '再按一次退出应用',
   duration: 2000,
   position: 'top'
  });
 
  toast.onDidDismiss(() => {
   console.log('Dismissed toast');
  });
 
  toast.present();
 }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
与jquery serializeArray()一起使用的函数,主要来方便提交表单
Jan 31 Javascript
jQuery的控件及事件(输入控件及回车事件)使用示例
Jul 25 Javascript
js中哈希表的几种用法总结
Jan 28 Javascript
使用jquery prev()方法找到同级的前一个元素
Jul 11 Javascript
jquery 实现两Select 标签项互调示例代码
Sep 25 Javascript
js实现表单多按钮提交action的处理方法
Oct 24 Javascript
JS轮播图中缓动函数的封装
Nov 25 Javascript
angular实现商品筛选功能
Feb 01 Javascript
vuejs父子组件之间数据交互详解
Aug 09 Javascript
javascript触发模拟鼠标点击事件
Jun 26 Javascript
原生js实现俄罗斯方块
Oct 20 Javascript
微信小程序开发数据缓存基础知识辨析及运用实例详解
Nov 06 Javascript
ionic3双击返回退出应用的方法
Sep 17 #Javascript
Vue 自定义标签的src属性不能使用相对路径的解决
Sep 17 #Javascript
vue.js购物车添加商品组件的方法
Sep 17 #Javascript
关于vue项目中搜索节流的实现代码
Sep 17 #Javascript
Vue的生命周期操作示例
Sep 17 #Javascript
小程序两种滚动公告栏的实现方法
Sep 17 #Javascript
Vue Extends 扩展选项用法完整实例
Sep 17 #Javascript
You might like
PHPUnit PHP测试框架安装方法
2011/03/23 PHP
PHP array操作10个小技巧分享
2011/06/23 PHP
基于PHP静态类的原罪详解
2013/05/06 PHP
PHP二维数组去重实例分析
2016/11/18 PHP
thinkPHP5.0框架环境变量配置方法
2017/03/17 PHP
ThinkPHP中Widget扩展的两种写法及调用方法详解
2017/05/04 PHP
基于jquery的滑动样例代码
2010/11/20 Javascript
javascript浏览器兼容教程之事件处理
2014/06/09 Javascript
jquery常用操作小结
2014/07/21 Javascript
JavaScript中的变量作用域介绍
2014/12/31 Javascript
JQuery实现的按钮倒计时效果
2015/12/23 Javascript
原生js编写autoComplete插件
2016/04/13 Javascript
浅谈js里面的InttoStr和StrtoInt
2016/06/14 Javascript
JS编写兼容IE6,7,8浏览器无缝自动轮播
2018/10/12 Javascript
Node.js 使用axios读写influxDB的方法示例
2018/10/26 Javascript
微信小程序实现通过双向滑动缩放图片大小的方法
2018/12/30 Javascript
对layer弹出框中icon数字参数的说明介绍
2019/09/04 Javascript
原生JavaScript实现贪吃蛇游戏
2020/11/04 Javascript
[02:44]2014DOTA2 国际邀请赛中国区预选赛 大神红毯秀
2014/05/25 DOTA
Pandas统计重复的列里面的值方法
2019/01/30 Python
详解Django项目中模板标签及模板的继承与引用(网站中快速布置广告)
2019/03/27 Python
python 五子棋如何获得鼠标点击坐标
2019/11/04 Python
20行Python代码实现一款永久免费PDF编辑工具的实现
2020/08/27 Python
Python filter()及reduce()函数使用方法解析
2020/09/05 Python
利用Pycharm + Django搭建一个简单Python Web项目的步骤
2020/10/22 Python
一款利用html5和css3实现的3D立方体旋转效果教程
2016/04/26 HTML / CSS
Bluebella美国官网:英国性感内衣品牌
2018/10/04 全球购物
副总经理工作职责
2013/11/28 职场文书
淘宝店策划方案
2014/06/07 职场文书
防灾减灾活动总结
2014/08/30 职场文书
党委干部批评与自我批评发言稿
2014/09/28 职场文书
小学语文教师研修日志
2015/11/13 职场文书
合同范本之电脑出租
2019/08/13 职场文书
pytorch 中nn.Dropout的使用说明
2021/05/20 Python
MySQL详解进行JDBC编程与增删改查方法
2022/06/16 MySQL
Springboot集成kafka高级应用实战分享
2022/08/14 Java/Android