解释这段代码onShow(options) { //微信用户信息 var userStor = wx.getStorageSync('user'); if (userStor && userStor.nickName) { console.log('本地获取微信用户信息', userStor) this.setData({ userInfo: userStor, }) } else { this.setData({ userInfo: null, }) } // 获取Java用户信息和会员信息 this.getVipInfo() }, // 获取Java用户信息和会员信息 getVipInfo() { let that=this wx.request({ url: app.globalData.baseUrl + '/user/getUserInfo', data: { openid: app.globalData.openid }, success: function (res) { console.log("个人中心Java后台返回的用户信息", res.data) if (res && res.data && res.data.data) { app._updateVipInfo(res.data.data) // java用户信息和会员信息 var user = app.globalData.vipInfo; if (user.viptime && user.viptime > 0) { let shengyu = user.viptime - new Date().getTime() console.log("会员剩余时间", shengyu) that.setData({ shengyu, vipTimeStr: app._getCurrentTime(user.viptime) }) } } } }) }, //获取微信用户信息 getUserProfile() { wx.getUserProfile({ desc: '用于完善会员资料', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写 success: (res) => { console.log("获取用户信息成功", res) let user = res.userInfo this.setData({ userInfo: user, }) wx.setStorageSync('user', user) }, fail: res => { console.log("获取用户信息失败", res) } }) },
时间: 2023-12-06 13:39:58 浏览: 96
这段代码是一个小程序页面的生命周期函数 `onShow()` 以及两个自定义函数 `getVipInfo()` 和 `getUserProfile()` 的实现。
在 `onShow()` 函数中,首先从本地存储中获取微信用户信息,如果存在则将用户信息设置到页面的 `userInfo` 数据中;否则将 `userInfo` 数据设置为 null。然后调用 `getVipInfo()` 函数,该函数通过发送网络请求获取 Java 后台返回的用户信息和会员信息,如果成功获取到,则将数据更新到全局变量 `vipInfo` 中,并从中获取会员剩余时间和有效期字符串,将这些数据设置到页面的数据中。
`getUserProfile()` 函数用于获取用户的微信信息,包括昵称、头像等。在获取成功后,将用户信息设置到页面的 `userInfo` 数据中,并将其存储到本地缓存中。
总的来说,这段代码主要实现了获取微信用户信息和 Java 后台的用户信息和会员信息,并将这些数据设置到页面的数据中。
相关问题
解释这段代码onShow(options) { //微信用户信息 var userStor = wx.getStorageSync('user'); if (userStor && userStor.nickName) { console.log('本地获取微信用户信息', userStor) this.setData({ userInfo: userStor, }) } else { this.setData({ userInfo: null, }) }
这段代码是在小程序中的一个页面显示时触发的函数,用于获取微信用户的信息。首先通过调用`wx.getStorageSync`方法获取本地存储的用户信息,如果存在则将信息赋值给`userInfo`变量,并在控制台打印出本地获取的用户信息;如果不存在则将`userInfo`变量赋值为`null`。通过这段代码,小程序可以在用户打开页面时自动获取本地存储的用户信息,从而提高用户体验。
阅读全文