如何等待 onLaunch 拿到后端数据后,再执行页面 onLoad
时间: 2024-04-07 22:29:59 浏览: 80
在小程序的 onLaunch 生命周期中,可以通过调用异步函数等待后端数据的返回。当后端数据返回后,可以将数据保存在小程序全局数据 getApp().globalData 中。在页面的 onLoad 生命周期中,可以通过访问 getApp().globalData 中的数据来使用后端数据。
具体的实现方法如下:
1. 在 app.js 中的 onLaunch 生命周期中,调用异步函数获取后端数据。
2. 在异步函数中,等待后端数据返回并保存在 getApp().globalData 中。
3. 在异步函数中,调用 wx.reLaunch 重新打开小程序主页。
4. 在小程序主页的 onLoad 生命周期中,访问 getApp().globalData 中的数据来使用后端数据。
相关问题
小程序 onlaunch 获取数据后再执行onload
您好,如果您想在小程序的onLaunch生命周期函数中获取数据,然后在onLoad生命周期函数中使用这些数据进行相应的操作,可以使用全局事件来实现。
具体实现方法如下:
```
App({
onLaunch: function () {
// 异步请求获取数据
wx.request({
url: 'your_url',
success: res => {
// 将获取到的数据存储到全局变量中
this.globalData.data = res.data
// 发送事件通知页面数据已经获取
wx.event.emit('dataLoaded')
}
})
},
globalData: {
data: null
}
})
Page({
onLoad: function () {
// 监听事件,当数据已经获取时执行相应的操作
wx.event.on('dataLoaded', () => {
// 从全局变量中获取数据并进行相应的操作
var data = getApp().globalData.data
// 进行相应的操作
})
}
})
```
在onLaunch生命周期函数中使用异步请求获取数据,并将获取到的数据存储到全局变量中。然后使用全局事件在数据获取完成后通知页面,当页面收到事件通知后,就可以从全局变量中获取数据并进行相应的操作。
这样就可以实现在小程序的onLaunch生命周期函数中获取数据,然后在onLoad生命周期函数中使用这些数据进行相应的操作。
小程序 onlaunch 登录获取信息后再执行onload
您好,关于小程序的onLaunch和onLoad生命周期函数,它们的执行顺序是onLaunch先执行,onLoad后执行。在onLaunch中获取用户信息,您可以使用wx.getUserInfo()方法获取用户信息,然后将其存储到本地缓存中。在onLoad中可以从本地缓存中获取用户信息并进行相应的操作。具体实现代码如下:
```
App({
onLaunch: function () {
// 获取用户信息
wx.getUserInfo({
success: res => {
// 将用户信息存储到本地缓存中
wx.setStorageSync('userInfo', res.userInfo)
}
})
}
})
Page({
onLoad: function () {
// 从本地缓存中获取用户信息
var userInfo = wx.getStorageSync('userInfo')
// 进行相应的操作
}
})
```
这样,在小程序启动时就可以先获取用户信息,然后在页面加载时从本地缓存中获取用户信息并进行相应的操作。
阅读全文