Page({
data: {
openid: '',
info: {}
},
getUserInfo() {
console.log("openid" + this.data.openid);
if (!this.data.openid.trim()) {
return;
}
},
onLoad() {
this.getUserInfo();
const openid = wx.getStorageSync('openid')
this.setData({
openid: openid
})
},
})
新手入坑,要崩溃了?
在onLoad中设置了openid的值,缓存中也openid的值,为什么打印openid的时候却没有值?有大佬知道的吗?
执行顺序颠倒了,先赋值后打印才对
先后顺序呗,getUserInfo先执行,都还没有赋值,所以打印是空
方法调用顺序不对吧 openid打印的时候还没赋值
解决了,谢谢大家
改成同步,用async await 写法,就可以这样写了
你的代码相当于:
console.log(openid) let openid = 'openid'