onShow: function () { let id = wx.getStorageSync('id'); if (!id || id == "") { wx.navigateTo({ url: 'index', }) } else { s.se('id', id); s.g('c/user_detail', { s: (data)=>{ if (data.code == 200) { let info = data.data; if (info.name == "" || info.name == null) { wx.navigateTo({ url: 'info', }) } else { wx.reLaunch({ url: '../home/home', }) } } } }) } },代码解释
时间: 2023-06-26 18:06:14 浏览: 71
这段代码是一个小程序页面的生命周期函数 onShow,它在页面每次展示时都会被调用。首先,它会从本地缓存中获取一个名为 id 的值。如果 id 不存在或为空,那么会跳转到一个名为 index 的页面。如果 id 存在,那么会向服务器发送一个名为 c/user_detail 的 GET 请求,并将 id 作为参数传递。如果请求成功,且返回的数据 code 等于 200,那么会从返回数据中提取出用户信息 info。如果用户信息中的 name 为空或 null,那么会跳转到一个名为 info 的页面,让用户填写个人信息。否则,会关闭所有页面,打开一个名为 home 的页面。
相关问题
解释这段程序onReady: function() { this.getTip() }, onShow: function() { if (wx.getStorageSync('guid')) { this.getCartNum() } this.getCate1() this.curAdres() }, getBanner: function() { var that = this api.get(banner, { name: 'homehotbanner' }).then(res => { that.setData({ swiperConfig: res.Data }) }) }, getBanner2: function() { var that = this api.get(banner, { name: 'homehotbanner-second-mobile' }).then(res => { that.setData({ banner2: res.Data.Items[0] }) }) }, bannerHref: function(e) { let url = e.currentTarget.dataset.url wx.navigateTo({ url: url, }) },
这是一个小程序的页面逻辑部分,包含了一些生命周期函数和自定义函数。
onReady函数是页面生命周期函数,当页面初次渲染完成时会触发该函数,函数内部调用了getTip函数。
onShow函数也是页面生命周期函数,当页面显示时会触发该函数,函数内部通过wx.getStorageSync获取缓存数据,如果存在缓存数据则调用getCartNum函数,同时也调用了getCate1和curAdres函数。
getBanner和getBanner2是自定义函数,分别用来获取轮播图和广告图的数据。这里使用了api.get函数来发起网络请求,并在请求成功后更新页面数据。
bannerHref是自定义函数,用来处理轮播图和广告图的跳转链接。在点击事件触发时,获取到对应的链接并使用wx.navigateTo函数进行跳转。
总体来说,这段程序是一个小程序的首页逻辑部分,主要实现了轮播图、广告图、购物车数量、地址等功能。
解释这段代码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) } }) },
这段代码是一个小程序页面的生命周期函数 `onShow()` 以及两个自定义函数 `getVipInfo()` 和 `getUserProfile()` 的实现。
在 `onShow()` 函数中,首先从本地存储中获取微信用户信息,如果存在则将用户信息设置到页面的 `userInfo` 数据中;否则将 `userInfo` 数据设置为 null。然后调用 `getVipInfo()` 函数,该函数通过发送网络请求获取 Java 后台返回的用户信息和会员信息,如果成功获取到,则将数据更新到全局变量 `vipInfo` 中,并从中获取会员剩余时间和有效期字符串,将这些数据设置到页面的数据中。
`getUserProfile()` 函数用于获取用户的微信信息,包括昵称、头像等。在获取成功后,将用户信息设置到页面的 `userInfo` 数据中,并将其存储到本地缓存中。
总的来说,这段代码主要实现了获取微信用户信息和 Java 后台的用户信息和会员信息,并将这些数据设置到页面的数据中。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)