微信小程序最新用户头像昵称获取规则调整应对措施(2022)

这篇具有很好参考价值的文章主要介绍了微信小程序最新用户头像昵称获取规则调整应对措施(2022)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、调整

小程序用户头像昵称获取规则调整公告
微信小程序最新用户头像昵称获取规则调整应对措施(2022)
以前通过wx.getUserProfile获取用户信息,用户点击同意以后,便可以直接获取相关信息,但是官方最近做出了调整,直接将头像和昵称使用默认值填充了,所以我们无法直接获取用户的信息了,需要新增一个页面用于用户自定义头像和昵称。

二、应对措施

微信新增了头像填充能力:头像昵称填写
微信小程序最新用户头像昵称获取规则调整应对措施(2022)
微信小程序最新用户头像昵称获取规则调整应对措施(2022)

2.1 更新头像

微信小程序最新用户头像昵称获取规则调整应对措施(2022)
就是设置button的open-type为chooseAvatar,当用户点击时,就会触发“修改头像”事件。
微信小程序最新用户头像昵称获取规则调整应对措施(2022)
button按钮

    <button class="avatar-wrapper" open-type="chooseAvatar" bind:chooseavatar="onChooseAvatar">
      修改头像
    </button>

回调函数onChooseAvatar:

  //用户选中自定义头像的回调
  onChooseAvatar(e) {
    const {
      avatarUrl
    } = e.detail
    // 获取到的avatarUrl(临时地址):http://tmp/ZENIKXqaUC20a19f3c2fd621b82c7662b952e000d532.jpeg
    console.log(avatarUrl);
    //更新当前页面信息
    this.setData({
      ['userInfo.avatarUrl']: avatarUrl,
    })
  },

获取到的头像地址是一个临时地址,并不是长期有效的,我们需要将这个地址对应的文件存到自己的服务器上或者云存储中。
例如使用云开发的存储能力:微信小程序云开发-存储
微信小程序最新用户头像昵称获取规则调整应对措施(2022)

2.2 更新昵称

微信小程序最新用户头像昵称获取规则调整应对措施(2022)

<input type="nickname" class="nick-name-input" placeholder="请输入昵称" 	bindblur="changeNickName"/>
  // 用户修改昵称
  changeNickName(e){
    let name = e.detail.value;
    if(name.length === 0) return;
    this.setData({
      ['userInfo.nickName']: name
    })
  }

这里没有使用bindtap而是直接使用bindblur是因为如果直接使用提示的个人微信昵称填充时,不会触发bindtap事件。

三、完整代码

主要是逻辑代码,样式还需要根据自己的业务进行调整。
index.wxml

<!--index.wxml-->
<view class="container">
  <view class="userinfo" wx:if="{{hasUserInfo}}">
    <block>
      <image class="userinfo-avatar" src="{{userInfo.avatarUrl}}" mode="cover"></image>
      <text class="userinfo-nickname">{{userInfo.nickName}}</text>
    </block>
    <button class="avatar-wrapper" open-type="chooseAvatar" bind:chooseavatar="onChooseAvatar">
      修改头像
    </button>
    <input type="nickname" class="nick-name-input" placeholder="请输入昵称" 	bindblur="changeNickName"/>
  </view>
  <button bindtap="getUserProfile" wx:else>获取用户信息</button>
</view>

index.js

// index.js
// 获取应用实例
const app = getApp()

Page({
  data: {
    userInfo: {},
    hasUserInfo: false
  },
  onLoad() {

  },
  getUserProfile(e) {
    // 推荐使用wx.getUserProfile获取用户信息,开发者每次通过该接口获取用户个人信息均需用户确认,开发者妥善保管用户快速填写的头像昵称,避免重复弹窗
    wx.getUserProfile({
      desc: '展示用户信息', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写
      success: (res) => {
        console.log(res.userInfo)
        this.setData({
          userInfo: res.userInfo,
          hasUserInfo: true
        })
      }
    })
  },
  //用户选中自定义头像的回调
  onChooseAvatar(e) {
    const {
      avatarUrl
    } = e.detail
    // 获取到的avatarUrl(临时地址):http://tmp/ZENIKXqaUC20a19f3c2fd621b82c7662b952e000d532.jpeg
    console.log(avatarUrl);

    this.setData({
      ['userInfo.avatarUrl']: avatarUrl,
    })
  },
  // 用户修改昵称
  changeNickName(e){
    let name = e.detail.value;
    if(name.length === 0) return;
    this.setData({
      ['userInfo.nickName']: e.detail.value
    })
  }
})

index.wxss

/**index.wxss**/
.userinfo {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #aaa;
}

.userinfo-avatar {
  overflow: hidden;
  width: 128rpx;
  height: 128rpx;
  margin: 20rpx;
  border-radius: 50%;
}

.avatar-wrapper{
  margin: 10px 0;
}

.nick-name-input{
  border: 1px solid #f1f1f1;
  padding:5px;
}

修改后:
微信小程序最新用户头像昵称获取规则调整应对措施(2022)
注意:修改后的userInfo应该同步更新到数据库中,因为当前仅仅只是修改该了data中的数据。文章来源地址https://www.toymoban.com/news/detail-412669.html

到了这里,关于微信小程序最新用户头像昵称获取规则调整应对措施(2022)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 2023年最新微信小程序获取用户openid、头像昵称的填写能力和方法原生写法

    2023年最新微信小程序获取用户openid、头像昵称的填写能力和方法原生写法

    大家好,下面是我身为小白分享给小白哈, 不懂就问相互学习共同进步! 亲测自用原生代码,感谢大神指点赐教鼓励勿喷; 只需9个一键复制粘贴步骤一气呵成; 先来 本文最终主要实现效果 : 获取微信小程序用户头像昵称的填写能力和方法原生写法 一:先捋一捋思路逻辑

    2024年02月08日
    浏览(14)
  • 最新微信小程序获取头像昵称,直接用,uniapp获取微信小程序头像昵称

    最新微信小程序获取头像昵称,直接用,uniapp获取微信小程序头像昵称

    微信小程序获取用户头像和昵称一个开放接口是wx.getUserInfo,2021年4月5日被废弃,原因是很多开发者在打开小程序时就通过组件方式唤起getUserInfo弹窗,如果用户点击拒绝,无法使用小程序,这种做法打断了用户正常使用小程序的流程,同时也不利于小程序获取新用户,后面新

    2024年02月11日
    浏览(46)
  • 微信小程序最新获取头像昵称方式

    微信小程序最新获取头像昵称方式

      前言 版本历史变迁 一、获取头像的正确姿势 二、获取昵称的正确姿势 总结 产品需要获取微信用户的昵称和头像。 这这还不简单,so easy! 通过 wx.getUserProfile 或者  wx.getUserInfo  就可以获取到。 但是获取的昵称是”微信用户“获取的头像是灰色的头像。 如果你也是上面这

    2024年02月13日
    浏览(51)
  • 微信小程序获取用户头像昵称

    微信小程序获取用户头像昵称

    微信小程序是一种基于微信开发平台的轻应用,用户可以通过微信扫码、搜索等方式进入小程序并使用。在小程序中,获取用户昵称和头像是非常常见的需求,因为这些信息可以用来个性化展示内容,提高用户体验。以下是获取用户头像昵称的传统方法: 在小程序中,可以通

    2024年02月07日
    浏览(42)
  • 微信小程序获取用户信息(getUserProfile接口回收后)——通过头像昵称填写获取用户头像和昵称

    微信小程序获取用户信息(getUserProfile接口回收后)——通过头像昵称填写获取用户头像和昵称

    背景:最近在用uniapp写微信小程序授权登录的时候,发现项目在微信开发者工具中调试是正常的,但是在真机运行时,返回的用户数据中昵称变成了微信用户,头像变成了默认的灰底头像。接着去百度了一下发现出现这个问题的原因是getUserProfile接口被回收了,微信小程序基

    2024年02月11日
    浏览(45)
  • 微信小程序如何获取用户头像昵称

    微信小程序如何获取用户头像昵称

        微信小程序登录用户头像昵称已经不支持支持获取,因为用户的scope.userInfo权限已经回收,可以使用昵称头像填写进行完善用户信息,按照官方推荐会显示用户在微信的头像和昵称,本文介绍一下实现方案.最终实现效果:修改头像会默认显示微信头像,修改昵称时会默认显示

    2024年02月11日
    浏览(47)
  • uniapp微信小程序最新登录获取头像、昵称

    uniapp微信小程序最新登录获取头像、昵称

    由于微信官方wx.getUserProfile 接口的回收,以后不能通过wx.getUserProfile来返回用户信息,只能自己手动获取用户头像和昵称的信息。  针对此问题有以下解决方法: 在点击登录时用一个弹窗设置头像和昵称,如图:  使用button设置open-type=\\\"chooseAvatar\\\"来获取头像,至于button更多的效

    2024年02月11日
    浏览(47)
  • uniapp微信小程序最新获取昵称和头像

    uniapp微信小程序最新获取昵称和头像

    1.微信获取头像和昵称最新需要用户上传头像和手动输入昵称,否则昵称默认是微信用户,头像是灰色头像 ps(会提示使用微信头像和微信昵称)

    2024年02月11日
    浏览(44)
  • 微信小程序:获取用户信息(昵称和头像)

    微信小程序获取用户信息的接口几经变更,建议直接使用方式四: wx.getUserProfile 获取 组件功能调整为优化用户体验,平台将于2022年2月21日24时起回收通过展示个人信息的能力。 如有使用该技术服务,请开发者及时对小程序进行调整,避免影响服务流程。查看详情: https://de

    2023年04月08日
    浏览(48)
  • uniapp 微信小程序 获取用户头像和昵称

    uniapp 微信小程序 获取用户头像和昵称

    自2022年10月25日后,小程序  wx.getUserProfile 接口  被收回,通过 wx.getUserInfo 接口获取用户头像将统一返回默认灰色头像,昵称将统一返回 “微信用户”。如需获取用户头像昵称,可以手动获取,具体步骤👉「头像昵称填写能力」  ✍GitHub完整代码地址👉: https://github.com/c

    2024年02月08日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包