小程序生命周期(onLaunch、onShow、onHide、onReady、onLoad、onUnloa)
程序 生命周期 onLoad
2023-09-11 14:19:07 时间
(1)onlaunch:当小程序初始化完成时,会触发 onLaunch(全局只触发一次)(app.js);
(2)onLoad: 页面加载
小程序注册完成后,加载页面,触发onLoad方法。一个页面只会调用一次,可以在 onLoad 中获取打开当前页面所调用的 query 参数(页面js)。
(3)onShow: 页面显示
页面载入后触发onShow方法,显示页面。每次打开页面都会调用一次(比如当小程序有后台进入到前台运行或重新进入页面时)。
(4)onReady: 首次显示页面,页面初次渲染完成,会触发onReady方法,渲染页面元素和样式,一个页面只会调用一次,代表页面已经准备妥当,可以和视图层进行交互。对界面的设置如wx.setNavigationBarTitle请在onReady之后设置。
(5)onHide: 页面隐藏
当navigateTo或底部tab切换时调用。
(6)onUnload: 页面卸载
当使用重定向方法wx.redirectTo(OBJECT)或关闭当前页返回上一页wx.navigateBack的时候调用。
基本上可以说执行顺序为onLaunch–onLoad–onShow–onReady–onHide.
虽然说onLaunch在onLoad之前执行,但是在onLaunch里请求获取是否有权限,等待返回值的时候Page里的onLoad事件就已经执行了。
解决办法:
在APP里面onLanch中的网络请求中设置判断
if (this.userInfoReadyCallback) { this.userInfoReadyCallback(res) }
在page的onLoad中设置一个回调
app.userInfoReadyCallback = res => { if (res != '') { console.log("app.globalData.userInfo") } }
.
相关文章
- C#.NET常见问题(FAQ)-控制台程序如何输出Messagebox
- C#如何生成release版本的程序,生成debug版本的程序
- Android程序ToDoList
- linux下利用nohup后台运行jar文件包程序
- 微信小程序----App生命周期
- MSF给正常程序添加后门
- WCF 入门教程一(动手新建第一个WCF程序并部署)
- 家政服务小程序实战教程03-创建自定义应用
- 成功解决 python 不是内部或外部命令,也不是可运行的程序或批处理文件
- 用Python做一个简易健身运动程序
- 程序里随处可见的interface,真的有用吗?真的用对了吗?
- 【Linux 内核】进程管理 ( 进程与操作系统 | 进程与程序 | 进程与线程 | 虚拟地址空间 )
- 程序猿笑话集锦
- 程序猿老公去米国参加 WWDC,顺便想带渡老婆蜜月,如何办签证?
- Servlet第一篇【介绍Servlet、HTTP协议、WEB目录结构、编写入门Servlet程序、Servlet生命周期】