微信小程序填写用户头像和昵称实现方法浅析
作者:李長庚
这篇文章主要介绍了微信小程序填写用户头像和昵称实现方法,我们使用小程序往往能碰到提示允许获取用户头像昵称,这种功能怎么实现呢?本篇文章带你探索
开放能力调整公告
总体来说就是通过按钮来授权获取用户基础信息的能力都没啦(wx.getUserProfile,wx.getUserInfo都不行了),都要使用新版本的 【头像昵称填写能力】啦。
获取头像
获取头像代码
wxxl部分
<button class="avatar-wrapper" open-type="chooseAvatar" bind:chooseavatar="onChooseAvatar"> <image class="avatar" src="{{avatarUrl}}"></image> </button>
js部分
Page({ data: { avatarUrl: defaultAvatarUrl, }, onChooseAvatar(e) { const { avatarUrl } = e.detail //获取图片临时路径 this.setData({ avatarUrl, }) } })
适配头像时需要注意的地方
此时获取到的头像路径为本地路径,虽然可以在页面上显示,但是并不能直接入库使用,浏览器上是访问不到的。需要上传到我们自己的服务器,后面每次使用都从我们自己的服务器上取。 其实说白了就是之前头像文件我们都是从微信服务器获取的,现在需要去我们自己的服务器获取了。
wx.uploadFile({ url: '我们自己的服务器地址', //仅为示例,非真实的接口地址 filePath: '图片临时路径', name: 'uploadFile', //自定义name success(res) { console.log('res', res); //经自己服务器存储后,将地址返回到客户端。 }, fail(err) { console.log('err', err); }, complete(cp) { console.log(cp); } })
获取昵称
获取头像代码,将input中的“type”属性设置为‘nickname’,同时对"name"属性设定值,点击提交按钮后根据设置的name值获取对应的value。
<form bindsubmit="getUserName"> <!--定义提交事件--> <view class="cu-form-group"> <view class="title">昵称:</view> <input placeholder="请输入昵称" type="nickname" name="nickname" maxlength="32"></input> </view> <view class="up-bt"> <button form-type="submit" role="button" aria-disabled="false" class="save-bt cu-btn block bg-blue margin-tb-sm lg">更新资料</button> </view> </form>
js部分
getUserName(e) { console.log(e.detail.value.nickname); //用户输入或者选择的昵称 },
获取昵称需要注意的地方
用户输入或者选择昵称时,会异步对用户输入的内容进行安全监测,若未通过安全监测,微信将清空用户输入的内容,建议开发者通过 form 中form-type 为submit 的button 组件收集用户输入的内容。
到此这篇关于微信小程序填写用户头像和昵称实现方法浅析的文章就介绍到这了,更多相关小程序填写用户头像和昵称内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!