三步实现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 对象的定义方法
Jan 10 Javascript
jQuery获取文本节点之 text()/val()/html() 方法区别
Mar 01 Javascript
JS高级笔记
Jul 13 Javascript
js confirm()方法的使用方法实例
Jul 13 Javascript
javascript陷阱 一不小心你就中招了(字符运算)
Nov 10 Javascript
javascript 对象数组根据对象object key的值排序
Mar 09 Javascript
js判断移动端是否安装某款app的多种方法
Dec 18 Javascript
jQuery simplePage+AJAX plus分页插件用法实例
Feb 17 Javascript
jQuery操作复选框(CheckBox)的取值赋值实现代码
Jan 10 Javascript
canvas 实现中国象棋
Feb 17 Javascript
基于angular实现模拟微信小程序swiper组件
Jun 11 Javascript
antd Select下拉菜单动态添加option里的内容操作
Nov 02 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应用JSON技巧讲解
2013/02/03 PHP
php获取文章上一页与下一页的方法
2014/12/01 PHP
区分JS中的undefined,null,&quot;&quot;,0和false
2007/03/08 Javascript
基于jQuery的一个扩展form序列化到json对象
2010/12/09 Javascript
jquery struts 验证唯一标识(公用方法)
2013/03/27 Javascript
Jquery 实现表格颜色交替变化鼠标移过颜色变化实例
2013/08/28 Javascript
浅析IE10兼容性问题(frameset的cols属性)
2014/01/03 Javascript
jQuery的选择器中的通配符使用介绍
2014/03/20 Javascript
jQuery实现鼠标划过添加和删除class的方法
2015/06/26 Javascript
实例详解jQuery结合GridView控件的使用方法
2016/01/04 Javascript
AngularJS实现数据列表的增加、删除和上移下移等功能实例
2016/09/05 Javascript
JavaScript定时器实现的原理分析
2016/12/06 Javascript
利用JS实现页面删除并重新排序功能
2016/12/09 Javascript
微信小程序select下拉框实现效果
2019/05/15 Javascript
在Koa.js中实现文件上传的接口功能
2019/10/08 Javascript
vue调用微信JSDK 扫一扫,相册等需要注意的事项
2021/01/03 Vue.js
[00:27]DOTA2荣耀之路2:Patience from zhou!
2018/05/24 DOTA
Python的标准模块包json详解
2017/03/13 Python
python K近邻算法的kd树实现
2018/09/06 Python
pandas 转换成行列表进行读取与Nan处理的方法
2018/10/30 Python
python获取Linux发行版名称
2019/08/30 Python
英国和世界各地鲜花速递专家:Arena Flowers
2018/02/10 全球购物
Cecil Mode法国在线商店:女性时尚
2021/01/08 全球购物
什么是Web Service?
2012/07/25 面试题
财务会计专业毕业生自荐信
2013/10/02 职场文书
文明礼仪事迹材料
2014/01/09 职场文书
应用化学专业职业生涯规划书
2014/01/22 职场文书
餐饮业员工工作决心书
2014/03/11 职场文书
出国留学经济担保书
2014/04/01 职场文书
学校政风行风评议工作总结
2014/10/21 职场文书
2014年仓库保管员工作总结
2014/12/03 职场文书
幸福家庭事迹材料
2014/12/20 职场文书
社区五一劳动节活动总结
2015/02/09 职场文书
人事行政部各岗位职责说明书!
2019/07/15 职场文书
Golang 正则匹配效率详解
2021/04/25 Golang
Java死锁的排查
2022/05/11 Java/Android