三步实现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 相关文章推荐
给Javascript数组插入一条记录的代码
Aug 30 Javascript
把html页面的部分内容保存成新的html文件的jquery代码
Nov 12 Javascript
基于jquery的获取mouse坐标插件的实现代码
Apr 01 Javascript
js 3种归并操作的实例代码
Oct 30 Javascript
详谈jQuery操纵DOM元素属性 attr()和removeAtrr()方法
Jan 22 Javascript
javascript结合Canvas 实现简易的圆形时钟
Mar 11 Javascript
JCrop+ajaxUpload 图像切割上传的实例代码
Jul 20 Javascript
浅析JavaScript动画模拟拖拽原理
Dec 09 Javascript
socket.io实现在线群聊功能
Apr 07 Javascript
基于ionic实现下拉刷新功能
May 10 Javascript
jquery 验证用户名是否重复代码实例
May 14 jQuery
vue总线机制(bus)知识点详解
May 10 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
PHP分页显示制作详细讲解
2006/12/05 PHP
windows的文件系统机制引发的PHP路径爆破问题分析
2014/07/28 PHP
ThinkPHP Where 条件中常用表达式示例(详解)
2017/03/31 PHP
thinkPHP5 ACL用户权限模块用法详解
2017/05/10 PHP
php常用字符串查找函数strstr()与strpos()实例分析
2019/06/21 PHP
PHP 面向对象程序设计之类属性与类常量实现方法分析
2020/04/13 PHP
js的匿名函数使用介绍
2013/12/11 Javascript
js使用eval解析json实例与注意事项分享
2014/01/18 Javascript
javascript实现获取浏览器版本、操作系统类型
2015/01/29 Javascript
jQuery实现左右切换焦点图
2015/04/03 Javascript
javascript中判断json的方法总结
2015/08/27 Javascript
微信端开发--登录小程序步骤
2017/01/11 Javascript
js实现带缓动动画的导航栏效果
2017/01/16 Javascript
jQuery Autocomplete简介_动力节点Java学院整理
2017/07/17 jQuery
Angular中的$watch方法详解
2017/09/18 Javascript
搭建基于express框架运行环境的方法步骤
2018/11/15 Javascript
使用webpack编译es6代码的方法步骤
2019/04/28 Javascript
vue里的data要用return返回的原因浅析
2019/05/28 Javascript
完美解决vue 中多个echarts图表自适应的问题
2020/07/19 Javascript
python写入xml文件的方法
2015/05/08 Python
Python实现从URL地址提取文件名的方法
2015/05/15 Python
将Python代码打包为jar软件的简单方法
2015/08/04 Python
python编程羊车门问题代码示例
2017/10/25 Python
Python Web框架之Django框架cookie和session用法分析
2019/08/16 Python
使用python写一个自动浏览文章的脚本实例
2019/12/05 Python
python使用信号量动态更新配置文件的操作
2020/04/01 Python
解决pyinstaller打包运行程序时出现缺少plotly库问题
2020/06/02 Python
python自动生成证件号的方法示例
2021/01/14 Python
丽笙酒店官方网站:Radisson Hotels
2019/05/07 全球购物
幼儿园运动会加油词
2014/02/14 职场文书
建议书怎么写
2014/03/12 职场文书
个人租房协议书
2014/04/09 职场文书
综艺节目策划方案
2014/06/13 职场文书
低碳日宣传活动总结
2014/07/09 职场文书
2019年妇科护士的自我鉴定(3篇)
2019/09/26 职场文书
js不常见操作运算符总结
2021/11/20 Javascript