uniapp获取微信头像和昵称的最新方法!!!
1、小程序用户头像昵称获取规则调整公告
2、新的头像昵称快速填写功能
头像填写
需要将 button 组件 open-type 的值设置为 chooseAvatar,当用户选择需要使用的头像之后,可以通过 bindchooseavatar 事件回调获取到头像信息的临时路径。
<button type="balanced" open-type="chooseAvatar" @chooseavatar="onChooseavatar">
<image :src='newAvatar ? newAvatar : userInfo.avatar'></image>
</button>
昵称填写
需要将 input 组件 type 的值设置为 nickname,当用户在此input进行输入时,键盘上方会展示微信昵称。
<view class='input'><input type='nickname' name='nickname' :value='userInfo.nickname' placeholder="请输入昵称"></input>
3、如何将获取到的微信头像进行保存
犹豫通过获取到的微信头像是一个临时链接,无法直接进行保存。
我使用的方法是通过wx.uploadFile将将临时文件下载到缓存
wx.uploadFile({
filePath: e.detail.avatarUrl,
name: 'multipart',
url://服务器端接收图片的路径 ,
success: function(res) {
// 拿到一个服务器地址,永久地址
// JSON 解析,将JSON字符串解析为JSON对象
const resObj = JSON.parse(res.data);
// 拿到一个服务器地址,永久地址
console.log(resObj.data.url); //发送成功回调
//将永久地址存到 newAvatar 进行显示和存储信息
that.newAvatar = resObj.data.url;
},
fail: function(res) {
console.log(res); //发送失败回调,可以在这里了解失败原因
}
})
```