请问小程序中的全局变量globalData如何存取?
来源:3-7 详解async await
白云南方
2020-12-09
在app.js的globalData中定义一个公共对象userInfo,当程序加载时实现自动登录更新userInfo对象内容,供其他页面之用。
这个异步问题究竟如何解决?小程序官网上也找不到app.globalData相关文档。
请老师和同学们指点一下。
//app.js
App({
globalData:{
userInfo:{}
},
onLaunch: function () {
this.getUserInfo()
},
async getUserInfo() {
const res = await wx.cloud.callFunction({
name: 'login'
})
console.log('app::user:', res.result.data[0])
this.globalData.userInfo = res.result.data[0]
},
})
在page.js中获取globalData.userInfo
const app = getApp()
let userInfo = {}
Page({
onLoad: function (options) {
const app = getApp()
const globalData = app.globalData
console.log('page::globalData:', globalData)
const userInfo = globalData.userInfo
console.log('page::userInfo:', userInfo)
},
})
运行结果是:
写回答
1回答
-
谢成
2020-12-10
这个在课程中讲到了,可以这样做:让getUserInfo方法可以返回一个promise对象,然后在调用的地方.then就可以
032020-12-11
相似问题