app.js和index.js中的方法谁先执行
发现页面中的方法有些会比app.js中的方法更先执行,但是如果我想必须app.js中的方法执行完了才能执行页面中的方法该怎么办?
发现页面中的方法有些会比app.js中的方法更先执行,但是如果我想必须app.js中的方法执行完了才能执行页面中的方法该怎么办?
使用异步回调callback
app.js
App({ onLaunch: function () { wx.getUserInfo({ success: res => { // 可以将 res 发送给后台解码出 unionId this.globalData.userInfo = res.userInfo // 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回 // 所以此处加入 callback 以防止这种情况 if (this.userInfoReadyCallback) { this.userInfoReadyCallback(res) } } }) }}) |
index.js
//index.js//获取应用实例const app = getApp()Page({ data: {}, onLoad: function () { // 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回 // 所以此处加入 callback 以防止这种情况 app.userInfoReadyCallback = res => { // do something } }}) |