ionic2.0双击返回键退出应用


Posted in Javascript onSeptember 17, 2019

最近才把ionic的版本更新到2.0,所以便想感受一下2.0版本带来的新体验。

看了官方网站以及网上的各种介绍后,才知道这2.0版本结合了TypeScript和ES6,和1.0+版本有很大的不同,所以在此记录下使用2.0版本开发应用的过程与代码。此文就是介绍在2.0版本双击返回键退出应用。

先在这说下我从更新后到现在的经验吧。ionic2.0的项目目录和以前不一样了,而且是在/app这个文件夹下开发的,html、scss和ts文件都在这里,生成一个页面需要的三个文件(html、scss、ts)是使用命令ionic g page生成的。如,在当前项目下,使用ionic g page MyPage,就可以生成my-page一个文件夹以及文件夹里面的所需的三个文件。

还有,想在浏览器上测试效果,你就得执行命令ionic serve来测试,不像以前刷新就可以了(此处我被坑了很久才知道)。

双击返回键退出应用

首先,贴一下效果图:

ionic2.0双击返回键退出应用

然后就是主要代码。打开/app目录下的app.ts,把下面的代码全部复制粘贴,然后执行ionic run android就可以了。

import {Component} from '@angular/core';
import {Platform, ionicBootstrap} from 'ionic-angular';
import {StatusBar} from 'ionic-native';
import {TabsPage} from './pages/tabs/tabs';
import {ToastController} from 'ionic-angular';//这个是为了出现“再按一次退出”的弹出框才import的
 
@Component({
 template: '<ion-nav [root]="rootPage"></ion-nav>'
})
export class MyApp {
 
 private rootPage: any;
 public static backButtonPressedOnceToExit = false;
 
 constructor(private platform: Platform,public toastCtrl:ToastController) {
 this.rootPage = TabsPage;
 
 platform.ready().then(() => {
  // Okay, so the platform is ready and our plugins are available.
  // Here you can do any higher level native things you might need.
  StatusBar.styleDefault();
 });
 platform.registerBackButtonAction(function(e){
  if(MyApp.backButtonPressedOnceToExit){
  platform.exitApp();
  }else{
  MyApp.backButtonPressedOnceToExit = true;
  let toast = toastCtrl.create({
   message: '再按一次退出',
   duration: 2000,
   position: 'bottom'
  });
  toast.present();
  setTimeout(function(){
   MyApp.backButtonPressedOnceToExit = false;
  },2000)
  }
 },101)
 }
}
ionicBootstrap(MyApp);

在此结束。

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

Javascript 相关文章推荐
JQUERY CHECKBOX全选,取消全选,反选方法三
Aug 30 Javascript
IE与firefox下Dhtml的一些区别小结
Dec 02 Javascript
JS动态添加Table的TR,TD实现方法
Jan 28 Javascript
JavaScript获取元素尺寸和大小操作总结
Feb 27 Javascript
JavaScript监听文本框回车事件并过滤文本框空格的方法
Apr 16 Javascript
JS实现的适合做faq或menu滑动效果示例
Nov 17 Javascript
动态创建Angular组件实现popup弹窗功能
Sep 15 Javascript
Vue ElementUi同时校验多个表单(巧用new promise)
Jun 06 Javascript
详解小程序输入框闪烁及重影BUG解决方案
Aug 31 Javascript
实例讲解JavaScript截取字符串
Nov 30 Javascript
如何使用CSS3和JQuery easing 插件制作绚丽菜单
Jun 18 jQuery
JS实现骰子3D旋转效果
Oct 24 Javascript
三步实现ionic3点击退出app程序
Sep 17 #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
You might like
php实现微信支付之退款功能
2018/05/30 PHP
JS 对象介绍
2010/01/20 Javascript
基于jquery的划词搜索实现(备忘)
2010/09/14 Javascript
实现变速回到顶部的JavaScript代码
2011/05/09 Javascript
非常有用的40款jQuery 插件推荐(系列二)
2011/12/25 Javascript
js判断客户端是iOS还是Android等移动终端的方法
2013/12/11 Javascript
Nodejs学习笔记之Stream模块
2015/01/13 NodeJs
php+ajax+jquery实现点击加载更多内容
2015/05/03 Javascript
简单纯js实现点击切换TAB标签实例
2015/08/23 Javascript
详解Matlab中 sort 函数用法
2016/03/20 Javascript
非常棒的jQuery图片轮播效果
2016/04/17 Javascript
JS中数组重排序方法
2016/11/11 Javascript
jQuery插件echarts实现的去掉X轴、Y轴和网格线效果示例【附demo源码下载】
2017/03/04 Javascript
强大的 Angular 表单验证功能详细介绍
2017/05/23 Javascript
深入理解Vue.js源码之事件机制
2017/09/27 Javascript
详解 vue.js用法和特性
2017/10/15 Javascript
jQuery实现获取及设置CSS样式操作详解
2018/09/05 jQuery
Vue组件间通信方法总结(父子组件、兄弟组件及祖先后代组件间)
2019/04/17 Javascript
细说webpack6 Babel的使用详解
2019/09/26 Javascript
vue props 单项数据流实例分享
2020/02/16 Javascript
微信小程序实现弹幕墙(祝福墙)
2020/11/18 Javascript
[02:54]辉夜杯主赛事第二日败者组 iG.V赛后采访
2015/12/26 DOTA
[44:26]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#4EG VS Fnatic第二局
2016/03/03 DOTA
详解pandas删除缺失数据(pd.dropna()方法)
2019/06/25 Python
简单了解python关系(比较)运算符
2019/07/08 Python
python使用协程实现并发操作的方法详解
2019/12/27 Python
Python 中如何使用 virtualenv 管理虚拟环境
2021/01/21 Python
基于css3仿造window7的开始菜单
2010/06/17 HTML / CSS
Marmot土拨鼠官网:美国专业户外运动品牌
2018/01/11 全球购物
北欧最好的童装网上商店:Babyshop
2019/09/15 全球购物
Lungolivigno Fashion官网:高级时装在线购物
2020/10/17 全球购物
学校政风行风整改方案
2014/10/25 职场文书
大学班干部竞选稿
2015/11/20 职场文书
师德培训心得体会2016
2016/01/09 职场文书
《鸟的天堂》教学反思
2016/02/19 职场文书
python 模拟在天空中放风筝的示例代码
2021/04/21 Python