使用ionic切换页面卡顿的解决方法


Posted in Javascript onDecember 16, 2016

使用ionic开发app的时候,会发现切换页面的动画会卡顿,并不流畅,为了保证用户体验,大部分人会使用禁用动画的方法$ionicConfigProvider.views.transition('no');,但并不是最好的解决思路,cordova提供了native transitions可以让页面切换近乎原型的体验。主要步骤如下:

1、npm install ionic-native-transitions --save 下载该文件,并放入www/lib文件夹下

2、在index.html中加入<script src="lib/ionic-native-transitions/dist/ionic-native-transitions.min.js"></script>

2、cordova plugin add cordvoa-plugin-NativePageTransitions安装该插件

3、在app.js中引入'ionic-native-transitions'配置如下信息并禁用$ionicConfigProvider.views.transition('no');

$ionicNativeTransitionsProvider.setDefaultOptions({ 
 duration: 400, // in milliseconds (ms), default 400, 
 slowdownfactor: 4, // overlap views (higher number is more) or no overlap (1), default 4 
 iosdelay: -1, // ms to wait for the iOS webview to update before animation kicks in, default -1 
 androiddelay: -1, // same as above but for Android, default -1 
 winphonedelay: -1, // same as above but for Windows Phone, default -1, 
 fixedPixelsTop: 0, // the number of pixels of your fixed header, default 0 (iOS and Android) 
 fixedPixelsBottom: 0, // the number of pixels of your fixed footer (f.i. a tab bar), default 0 (iOS and Android) 
 triggerTransitionEvent: '$ionicView.afterEnter', // internal ionic-native-transitions option 
 backInOppositeDirection: false // Takes over default back transition and state back transition to use the opposite direction transition to go back 
});

这样在打包成的app里,切面切换的效果会比ionic自带的要流畅不少;

注意:页面切换的方向,后退<ion-nav-back-button>默认是左往右,其他则是右往左,有时候你可能并不用<ion-nav-back-button>这个标签,而是使用<ion-nav-bar>该标签,后退加自定义的东西,这时后退是按右往左,那怎样左往右了,用$rootScope.$ionicGoBack();就可以,而不要使用$ionicHistory.goBack();之后的后退方法。

更多的可以看下这个地址

https://github.com/shprink/ionic-native-transitions 

以上所述是小编给大家介绍的使用ionic切换页面卡顿的解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
一个选择最快的服务器转向代码
Apr 27 Javascript
判断脚本加载是否完成的方法
May 26 Javascript
apycom出品的jQuery精美菜单破解方法
Feb 18 Javascript
jQuery实现页面内锚点平滑跳转特效的方法总结
May 11 Javascript
jQuery实现提示密码强度的代码
Jul 15 Javascript
jquery实现适用于门户站的导航下拉菜单效果代码
Aug 24 Javascript
jquery基础知识第一讲之认识jquery
Mar 17 Javascript
JS实现的图片预览插件与用法示例【不上传图片】
Nov 25 Javascript
微信小程序实现折叠面板
Jan 31 Javascript
Vue入门之数量加减运算操作示例
Dec 11 Javascript
对TypeScript库进行单元测试的方法
Jul 18 Javascript
微信小程序实现拍照和相册选取图片
May 09 Javascript
详解如何较好的使用js
Dec 16 #Javascript
JS作用域闭包、预解释和this关键字综合实例解析
Dec 16 #Javascript
详解js的事件处理函数和动态创建html标记方法
Dec 16 #Javascript
利用js来实现缩略语列表、文献来源链接和快捷键列表
Dec 16 #Javascript
JS限制条件补全问题实例分析
Dec 16 #Javascript
Node.js用readline模块实现输入输出
Dec 16 #Javascript
ionic cordova一次上传多张图片(类似input file提交表单)的实现方法
Dec 16 #Javascript
You might like
PHP中改变图片的尺寸大小的代码
2011/07/17 PHP
php实现给图片加灰色半透明效果的方法
2014/10/20 PHP
php获取客户端电脑屏幕参数的方法
2015/01/09 PHP
location.href语句与火狐不兼容的问题
2010/07/04 Javascript
JQuery的Alert消息框插件使用介绍
2010/10/09 Javascript
常用一些Javascript判断函数
2012/08/14 Javascript
在jQuery ajax中按钮button和submit的区别分析
2012/10/07 Javascript
Js注册协议倒计时的小例子
2013/06/24 Javascript
简单几行JS Code实现IE邮件转发新浪微博
2013/07/03 Javascript
JS获取农历日期具体实例
2013/11/14 Javascript
JavaScript学习笔记之基础语法
2015/01/22 Javascript
ajax+jQuery实现级联显示地址的方法
2015/05/06 Javascript
探索Vue.js component内容实现
2016/11/03 Javascript
浅谈angular4.0中路由传递参数、获取参数最nice的写法
2018/03/12 Javascript
使用canvas实现一个vue弹幕组件功能
2018/11/30 Javascript
JavaScript如何操作css
2020/10/24 Javascript
解决removeEventListener 无法清除监听的问题
2020/10/30 Javascript
[05:37]DOTA2-DPC中国联赛 正赛 Elephant vs iG 选手采访
2021/03/11 DOTA
研究Python的ORM框架中的SQLAlchemy库的映射关系
2015/04/25 Python
python学习之编写查询ip程序
2016/02/27 Python
Python中operator模块的操作符使用示例总结
2016/06/28 Python
浅谈django url请求与数据库连接池的共享问题
2019/08/29 Python
浅谈python输出列表元素的所有排列形式
2020/02/26 Python
基于CSS3实现的漂亮Menu菜单效果代码
2015/09/10 HTML / CSS
Canvas中设置width与height的问题浅析
2018/11/01 HTML / CSS
瑞士领先的网上超市:LeShop.ch
2018/11/14 全球购物
哥德堡通行证:Gothenburg Pass
2019/12/09 全球购物
台湾专柜女包:KINAZ
2019/12/26 全球购物
护理个人求职信范文
2014/01/08 职场文书
军训鉴定表自我鉴定
2014/02/13 职场文书
农业局学习党的群众路线教育实践活动心得体会
2014/03/07 职场文书
承诺书格式
2014/06/03 职场文书
2015年学校保卫部工作总结
2015/05/11 职场文书
2015年共青团工作总结
2015/05/15 职场文书
2016年度创先争优活动总结
2016/04/05 职场文书
SpringCloud Function SpEL注入漏洞分析及环境搭建
2022/04/08 Java/Android