微信小程序onLaunch、onLoad执行生命周期

微信小程序onLaunch、onLoad执行生命周期

原文转载自:微信小程序onLaunch、onLoad执行生命周期

1、需求:先执行App的onLaunch添加验证权限等,再执行Page里的onLoad。

2、问题:还没有等onLaunch执行完成,onLoad就已经开始执行了。

3、解决办法:定义回调函数。

4、具体实现:Page页面判断一下当前app.globalData.employld是否有值,如果没有(第一次)定义一个app方法(回调函数),App页面在success后判断有没有page页面定义的回调方法,如果有就执行,因为回调函数是在Page页面内,方法作用域应指向的是Page页面。

app.employIdCallback = employId => {...}。

App.js

App({

onLaunch:function(){

wx.request({

url: 'test.php',

succrss:(res)=>{

this.globalData.employId = res.employId;

//由于这里是网络请求,可能会在 Page.onLoad 之后才返回

// 所以此处加入 callback 以防止这种情况

if (this.employIdCallback){

this.employIdCallback(employId);

}

}

})

},

globalData: {

employId: ''

}

});

index.js

//获取应用实例

const app = getApp()

Page({

data:{},

onLoad:function(){

//判断是用户是否执行完了请求,绑定了信息

if (app.globalData.employId && app.globalData.employId != '') { //执行操作 }else{

//由于请求是网络请求,可能会在Page.onLoad后才返回 //所以加入callback 防止这种情况 app.employIdCallback = employId =>{ if(employId!=''){ //执行操作。。 } }

} })

实现~

相关推荐

为什么怀孕喜欢吃面条
日博365官网网址

为什么怀孕喜欢吃面条

📅 06-28 👁️ 5001
淘乡甜是什么?属于什么性质的平台?
365的账户被关闭

淘乡甜是什么?属于什么性质的平台?

📅 06-27 👁️ 1740
一年半了,高德们那么拼,为什么还是干不过滴滴? 出品/壹览商业作者/骆丽兰,冯源编辑/木鱼在滴滴被按下暂停键的一年半左右的时间里(app下架时间:2021.7