mui.init()与mui.plusReady()区别和关系
首先我们来看下mui.init()与mui.plusReady()的区别:
mui框架将很多功能配置都集中在mui.init方法中,要使用某项功能,只需要在mui.init方法中完成对应参数配置即可,目前支持在mui.init方法中配置的功能包括:创建子页面、关闭页面、手势事件配置、预加载、下拉刷新、上拉加载。
但是官方有又说法:
页面初始化:必须执行mui.init方法
mui在页面初始化时,初始化了很多参数配置,比如:按键监听、手势监听等,因此mui页面都必须调用一次mui.init()方法;
在app开发中,若要使用HTML5+扩展api,必须等plusready事件发生后才能正常使用,mui将该事件封装成了mui.plusReady()方法,涉及到HTML5+的api,建议都写在mui.plusReady方法中。
个人认为:
1.每个用到mui的页面都调用下mui.init。
2.如果需要使用大H5+对象,就写到plusReady中,如plus对象。
初学mui会发现大量的demo中,都需要调用mui.init()和mui.plusReady(),可见这两东西在app开发中的重要性
首先请注意一点,如果不是做app开发(非hbuilder基座运行),做web开发的话(在浏览器运行html),plusReady是没有意义的,不会执行,为什么?
无论做wap网页,还是app开发,只要需要用到mui框架,都需要mui.init初始化框架功能,而plusready仅仅在app开发中使用
mui个人习惯:
每个用到mui的页面都调用下mui.init,直接放在js最前方
除了function定义函数之外,全都写在plusReady之中,function调用也放在其中,毕竟做app开发调用html5+api十分的频繁,就像jq的$(document).ready()一样的道理,尤其是出现plus对象的一定放在plusReady里面!
目前尚不清楚plusReady过分臃肿对性能是否造成伤害。理论上只是在html5+加载完之后执行其中的代码罢了,是不会影响性能,只会晚一点执行(延迟并不会感受到)
关于mui plusReady的注意点:
mui.plusReady()中的代码不执行
可能1:
你在浏览器下运行了html
可能2:
plusReady事件仅在webview首次创建时触发,使用mui.openWindow方法多次打开已存在的同样id的webview时,是不会重复触发plusReady事件的; 因此若业务写在plusReady事件中,可能会出现执行结果和预期不一致的情况;此时可通过自定义事件触发
mui.init和mui.plusReady这两者到底什么关系
mui.init初始化mui的一些参数配置
如果要使用h5+的一些对象、方法,就要使用mui.plusReady,比如mui.plus对象。
mui,init每次写js,最好都加上。
- 编程成为面向未来的基本能力?
- null或空值的判断处理
- 前端知识小结
- 除了比特币,区块链技术能做的还有很多
- Progressive Web Apps入门
- IDEA入门级使用教程
- 掌握Docker命令-Docker for Web Developers(4)
- InfoPath中repeating section中赋值操作
- 百布(baibu.la)完成1.65亿B+轮融资
- 八大排序算法总结与java实现
- Angular企业级开发(5)-项目框架搭建
- 如何让nginx显示文件夹目录
- Facebook Graph API(2)--读取数据之picture
- 使用Dockerfile构建镜像-Docker for Web Developers(5)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- UNIX网络编程卷1(第三版)基本TCP套接字编程
- Ubuntu下linux映射共享盘到window下方法
- 数据同步写入磁盘:sync
- 惯用的关机命令:shutdown
- 重启、关机:reboot,halt,poweroff
- 使用Docker构建ZooKeeper镜像
- Linux进程间的通信
- 如何使用jMeter对需要CSRF token验证的OData服务进行并发性能测试
- 如何让SAP C4C自定义BO实现附件上传的功能
- SAP C4C基于自定义BO开发的OWL UI,如何实现动态访问控制
- 使用ABAP CL_HTTP_CLIENT类消费OData服务时,如何避免CSRF令牌验证失败错误
- 使用ABAP代码消费SAP Cloud for Customer的OData服务
- 使用SAP C4C OData notification实现CRM和C4C的数据同步
- 在nodejs服务器和ABAP服务器上使用jsonp
- 如何在Android平台上创建自定义的Cordova插件并使用SAP UI5消费