小程序onLaunch和onload先后顺序

小程序onLaunch和onload先后顺序,第1张

在开发中,会有一些判断是在小程序初始化的时候建立的,比如说个人信息同步,同步之后在进行其他页面的相应的 *** 作,查看官方文档发现这个;

看到这个的时候,豁哈,找到宝了,是不是可开心了;

但是!你高兴的太早了!!哈哈哈... (都是泪)

实际上进入小程序首页的时候有时候会先执行onlaunch方法,有时又会先执行首页的onload的方法,最后经过测试可以确定,在小程序中这两个方法并没有执行先后的顺序,因为他们都是异步执行的。(前人的教训)

在page页面判断一下当前app.globalData.employ是否有值,如果没有,说明是第一次调用,则定义一个(回调函数)

App页面在请求success后判断时候有Page页面定义的回调方法,如果有就执行该方法。

在首页里

这样就可以实现我们想要的顺序:

[App] onLaunch => [Page] onLoad => [App] onLaunch sucess callback

源码可见 github

小程序初始化 :

问题 : 在 onLaunch 里请求去获取是否有权限,等待返回值的时候, Page里的 onLoad 事件就已经执行.

目标: onLaunch 请求完 ->再执行Page的 onLoad 方法

解决 : 定义一个回调函数

这样就能满足需求: 在 onLaunch 执行完毕后,再执行 onload 里的函数方法.


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12080241.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-20
下一篇2023-05-20

发表评论

登录后才能评论

评论列表(0条)

    保存