收藏
回答

小程序授权个人信息后会将存在storage的信息清除

onShow: function(options) { console.log("2App Show"); // console.log(options); this.globalData.redirect_page = options.path; this.globalData.options = options.query; this.globalData.loginSign = options.query.sign; if (options.scene == 1047 || options.scene == 1048) { //扫描二维码 & 长按二维码 if (options.query.scene && options.query.scene.length == 32) { //md5落地 this.globalData.options.sign = options.query.scene; } else { var scene = decodeURIComponent(options.query.scene); // console.log(scene); var arr = scene.split("="); if (arr[0] == "miner_uid") { this.globalData.miner_uid = parseInt(arr[1]); } } } wx.getSetting({ success: res => { if (res.authSetting["scope.userInfo"]) { // 已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框 if (wx.getStorageSync("userInfo")) { this.globalData.userInfo = wx.getStorageSync("userInfo"); this.getUserOpenId(this.registerHuoban); } else { wx.getUserInfo({ success: res => { // 可以将 res 发送给后台解码出 unionId // 登陆的时候赋值给globalData this.globalData.userInfo = res.userInfo; this.globalData.encryptedData = res.encryptedData; this.globalData.iv = res.iv; // 登陆的时候存入缓存 wx.setStorage({ key: "userInfo", data: res.userInfo }); wx.setStorage({ key: "encryptedData", data: res.encryptedData }); wx.setStorage({ key: "iv", data: res.iv }); this.getUserOpenId(this.registerHuoban); // 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回 // 所以此处加入 callback 以防止这种情况 if (this.userInfoReadyCallback) { this.userInfoReadyCallback(res); } } }); } } else { // 未授权,跳转到授权页面 console.log(58); console.log(this.globalData); wx.reLaunch({ url: "/page/auth/auth" }); } } }); },
回答关注问题邀请回答
收藏

1 个回答

登录 后发表内容