前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >附解决方案,小程序昵称突然变成了“微信用户”,而且头像也显示不了?

附解决方案,小程序昵称突然变成了“微信用户”,而且头像也显示不了?

原创
作者头像
编程小石头
修改2021-04-03 10:07:38
6.2K2
修改2021-04-03 10:07:38
举报
文章被收录于专栏:小程序云开发入门

最近好多小伙伴在使用getUserInfo获取小程序用户昵称和头像时,图然变成了下面这样。

错误图示

很多小伙伴肯定就疑虑了,明明我代码没有做任何改动啊,怎么突然就这样了呢。还记得我们之前应该长这样啊。

石头哥最近也遇到这样的问题了,我第一时间想到的原因有两个

1,微信官方服务器挂了(概率很小)

2,微信又改规则了。。。

带着这样的疑虑,去问了下微信小程序官方人员。得到的答案是。。。

心理一万个。。。。。 哎,没办法,既然官方说改规则,咱们作为弱势群体,只能跟着官方规则来改了啊。

代码改动

好在代码改动量不是很大,基本上改动5行代码就可以完事了。下面就来教大家如何改动代码吧。

1,先来看看老代码

js里的老代码

可以看到我们用老代码,获取的就是下面这样灰色的头像和 微信用户 这样的昵称

2,认识wx.getUserProfile

其实这个wx.getUserProfile和我们之前使用button结合open-type="getUserInfo" 和bindgetuserinfo事件获取用户信息没有太大区别,所以我们先来认识下wx.getUserProfile

这样改动其实还有点点好处,就是我们只需要在点击事件里调用wx.getUserProfile就可以调起授权弹窗,没必要非得在button组件里使用点击事件了。

解决问题的代码

1,wxml里的代码改动

2 js里的代码改动

这里我们主要是使用

代码语言:txt
复制
wx.getUserProfile({
      desc: '用于完善会员资料', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写
      success: (res) => {
        console.log("获取用户信息成功", res)
      },
      fail: res => {
        console.log("获取用户信息失败", res)
      }
})

可以看到能成功的调起授权弹窗了

并且可以获取真实的昵称了

其实到这里我们就改造好了,其实改造起来也就几行代码的事,麻烦的就是我们的小程序要因为这个改动要重新提交审核了。。。。

补充知识点:保存用户信息到缓存

如果我们每次进入页面都让用户点击授权,就有点太烦锁了,其实可以在第一次授权成功获取用户信息的时候把数据缓存在本地缓存的。下面就来教大家如何缓存用户信息。

代码以及完整的注释都贴出来给到大家

主要就是要调用

wx.setStorageSync存数据到本地缓存

wx.getStorageSync取缓存数据

wxml页面的代码也贴出来给到大家

还有我们的wxss样式

到这里我们就把官方的这个坑给填好了。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 错误图示
    • 带着这样的疑虑,去问了下微信小程序官方人员。得到的答案是。。。
    • 代码改动
      • 1,先来看看老代码
        • 2,认识wx.getUserProfile
        • 解决问题的代码
          • 1,wxml里的代码改动
            • 2 js里的代码改动
            • 补充知识点:保存用户信息到缓存
            相关产品与服务
            云开发 CloudBase
            云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档