<>前言

虽然app.js先于index.js。但是修改app.js中的全局变量是异步请求,如果你想在index.js里获取app.js修改后的值,那么需要使用
promise来实现异步。

app.js
//app.js App({ globalData: { userInfo: null }, // 检测授权 getauthor: function () {
return new Promise((resolve, reject) => { wx.getSetting({ success: (res) => { if
(res.authSetting["scope.userInfo"]) { console.log("已授权"); wx.getUserInfo({ lang:
'zh_CN', success:(res)=> { //箭头函数为了处理this的指向问题 this.globalData.userInfo = res.
userInfo; resolve(this.globalData.userInfo); // 这里是关键 } }) } else { reject(this.
globalData.userInfo) wx.redirectTo({ url: '/pages/author/author' }) console.log(
"未授权"); wx.removeStorage({ key: 'unionid' }) } } }) }) } })
index.js
// 获取用户信息 app.getauthor().then(res => { console.log(res); })
因为要首先加载index页面,所以需要使用异步请求,在其他页面的话,可以直接使用app.globalData.userInfo.userInfo,

技术
今日推荐
下载桌面版
GitHub
百度网盘(提取码:draw)
Gitee
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:766591547
关注微信