三步实现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源码分析-03构造jQuery对象-源码结构和核心函数
Nov 14 Javascript
使用JavaScript修改浏览器URL地址栏的实现代码
Oct 21 Javascript
javascript继承机制实例详解
Nov 20 Javascript
基于jQuery实现网页进度显示插件
Mar 04 Javascript
基于JavaScript代码实现微信扫一扫下载APP
Dec 30 Javascript
正则表达式替换html元素属性的方法
Nov 26 Javascript
JS仿淘宝搜索框用户输入事件的实现
Jun 19 Javascript
基于jQuery实现图片推拉门动画效果的两种方法
Aug 26 jQuery
详解Angular系列之变化检测(Change Detection)
Feb 26 Javascript
JS实现简易计算器
Feb 14 Javascript
extjs图形绘制之饼图实现方法分析
Mar 06 Javascript
JS原型对象操作实例分析
Jun 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
第八节--访问方式
2006/11/16 PHP
PHP文件下载实例代码浅析
2016/08/17 PHP
PHP array_reduce()函数的应用解析
2018/10/28 PHP
PHP封装请求类实例分析【基于Yii框架】
2019/10/17 PHP
jQuery 浮动广告实现代码
2008/12/25 Javascript
jquery 学习之二 属性 文本与值(text,val)
2010/11/25 Javascript
jQuery 回车事件enter使用示例
2014/02/18 Javascript
js 判断浏览器使用的语言示例代码
2014/03/22 Javascript
JavaScript字符串对象fromCharCode方法入门实例(用于把Unicode值转换为字符串)
2014/10/17 Javascript
AngularJS 面试题集锦
2016/09/06 Javascript
NodeJs模拟登陆正方教务
2017/04/28 NodeJs
vue-cli单页应用改成多页应用配置详解
2017/07/14 Javascript
微信小程序button组件使用详解
2018/01/31 Javascript
在Vue项目中使用snapshot测试的具体使用
2019/04/16 Javascript
nodeJs的安装与npm全局环境变量的配置详解
2020/01/06 NodeJs
python过滤字符串中不属于指定集合中字符的类实例
2015/06/30 Python
Windows平台Python连接sqlite3数据库的方法分析
2017/07/12 Python
R语言 vs Python对比:数据分析哪家强?
2017/11/17 Python
Python使用Selenium+BeautifulSoup爬取淘宝搜索页
2018/02/24 Python
python批量修改图片大小的方法
2018/07/24 Python
Win8.1下安装Python3.6提示0x80240017错误的解决方法
2018/07/31 Python
python利用requests库模拟post请求时json的使用教程
2018/12/07 Python
Python中logging实例讲解
2019/01/17 Python
Pytorch卷积层手动初始化权值的实例
2019/08/17 Python
Python 3.8正式发布,来尝鲜这些新特性吧
2019/10/15 Python
Python批量获取并保存手机号归属地和运营商的示例
2020/10/09 Python
Expedia丹麦:全球领先的旅游网站
2018/03/18 全球购物
馥蕾诗美国官网:Fresh美国
2019/10/09 全球购物
秘书专业自荐信范文
2013/12/26 职场文书
会计毕业生自荐书
2014/06/12 职场文书
自我管理的活动方案
2014/08/25 职场文书
幼儿园大班见习报告
2014/10/31 职场文书
夫妻分居协议书范本(有子女版)
2014/11/01 职场文书
闪闪的红星观后感
2015/06/08 职场文书
Vue和Flask通信的实现
2021/05/19 Vue.js
在CSS中使用when/else的方法
2022/01/18 HTML / CSS