微信小程序 生命周期函数详解


Posted in Javascript onMay 24, 2017

微信小程序 生命周期函数

小程序中 判断当前首页是从其他页面返回,还是由入口打开

由于小程序的数据在我们退出小程序时并没有得到释放,因此再次点击开来数据依然没有变成初始化
解决方法:在小程序 data 数据中声明一个变量 isClose 默认为 true 用于判断 是否为从入口打开,当点击跳转页面或者关闭小程序的时候,会触发 OnHide 函数在此函数中将判断 isClose is true 的时候即为关闭之后在打开,当跳转页面时首先将 isClose 设置为 false, 这样 触发 OnHide 函数的时候,isClose is flase 并不会执行,进入跳转的页面,然后在由页面进行返回这是会触发跳转的页面的 OnUnload 函数 在此函数中 设置一个定时器 在 200ms 之后将 isClose 改为 true 这样当关闭小程序 再次进入的时候 isColse 依然为true 判断时是首次进入页面

微信小程序的生命周期函数

1.1 监听页面加载

onLoad: function (options) {},

一个页面只会调用一次,可以在 onLoad 中获取打开当前页面所调用的 query 参数。

1.2 监听页面初次渲染完成

onReady: function () {},

一个页面只会调用一次,代表页面已经准备妥当,可以和视图层进行交互。

1.3 监听页面显示

onShow: function () {},

每次打开页面都会调用一次。

1.3 监听页面隐藏

onHide: function () {},

当navigateTo或底部tab切换时调用。

1.4 监听页面卸载

onUnload: function () {},

当redirectTo或navigateBack的时候调用。

微信小程序的 app.js 中 独有的 函数

2.1 监听小程序初始化

onLaunch:function () {},

当小程序初始化完成时,会触发 onLaunch(全局只触发一次)

2.2 错误监听函数

onError:function () {},

当小程序发生脚本错误,或者 api 调用失败时,会触发 onError 并带上错误信息

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
鼠标事件延时切换插件
Mar 12 Javascript
JavaScript中的onerror事件概述及使用
Apr 01 Javascript
js控制table合并具体实现
Feb 20 Javascript
jQuery中not()方法用法实例
Jan 06 Javascript
jQuery中slidedown与slideup方法用法示例
Sep 16 Javascript
jQuery 插件封装的方法
Nov 16 Javascript
mint-ui 时间插件使用及获取选择值的方法
Feb 09 Javascript
vue中如何去掉空格的方法实现
Nov 09 Javascript
vue-router的使用方法及含参数的配置方法
Nov 13 Javascript
PM2自动部署代码步骤流程总结
Dec 10 Javascript
react koa rematch 如何打造一套服务端渲染架子
Jun 26 Javascript
jQuery高级编程之js对象、json与ajax用法实例分析
Nov 01 jQuery
很棒的vue弹窗组件
May 24 #Javascript
详解Vue使用命令行搭建单页面应用
May 24 #Javascript
详解Vue 非父子组件通信方法(非Vuex)
May 24 #Javascript
微信小程序 支付功能(前端)的实现
May 24 #Javascript
微信小程序 选项卡的简单实例
May 24 #Javascript
JS回调函数基本定义与用法实例分析
May 24 #Javascript
解决jQuery ajax动态新增节点无法触发点击事件的问题
May 24 #jQuery
You might like
php日期转时间戳,指定日期转换成时间戳
2012/07/17 PHP
PHP读取zip文件的方法示例
2016/11/17 PHP
PHP生成随机数的方法总结
2018/03/01 PHP
php反射学习之依赖注入示例
2019/06/14 PHP
javascript 流畅动画实现原理
2009/09/08 Javascript
优化innerHTML操作(提高代码执行效率)
2011/08/20 Javascript
用js的for循环获取radio选中的值
2013/10/21 Javascript
js 弹出新页面避免被浏览器、ad拦截的一种新方法
2014/04/30 Javascript
javascript if条件判断方法小结
2014/05/17 Javascript
JS实现可拖曳、可关闭的弹窗效果
2015/09/26 Javascript
Bootstrap嵌入jqGrid,使你的table牛逼起来
2016/05/05 Javascript
判断js的Array和Object的实现方法
2016/08/29 Javascript
js放大镜放大购物图片效果
2017/01/18 Javascript
用JavaScript实现让浏览器停止载入页面的方法
2017/01/19 Javascript
Vue之Watcher源码解析(2)
2017/07/19 Javascript
vue 内置过滤器的使用总结(附加自定义过滤器)
2018/12/11 Javascript
JavaScript常用事件介绍
2019/01/21 Javascript
JavaScript手写数组的常用函数总结
2020/11/22 Javascript
JavaScript实现4位随机验证码的生成
2021/01/28 Javascript
[54:41]2018DOTA2亚洲邀请赛3月30日 小组赛B组 VGJ.T VS paiN
2018/03/31 DOTA
python获取远程图片大小和尺寸的方法
2015/03/26 Python
Python中常用信号signal类型实例
2018/01/25 Python
Python测试模块doctest使用解析
2019/08/10 Python
python梯度下降算法的实现
2020/02/24 Python
python打开音乐文件的实例方法
2020/07/21 Python
python正则表达式 匹配反斜杠的操作方法
2020/08/07 Python
详解Selenium-webdriver绕开反爬虫机制的4种方法
2020/10/28 Python
巴西Mr. Cat在线商店:购买包包和鞋子
2019/09/08 全球购物
新闻工作者先进事迹
2014/05/26 职场文书
金融与证券专业求职信
2014/06/22 职场文书
体育课外活动总结
2014/07/08 职场文书
药店促销活动总结
2014/07/10 职场文书
债务追讨律师函
2015/06/24 职场文书
学习社交礼仪心得体会
2016/01/22 职场文书
OpenCV3.3+Python3.6实现图片高斯模糊
2021/05/18 Python
Redis入门教程详解
2021/08/30 Redis