微信小程序获取用户昵称和头像
getUserInfo.js
Page({ data: { userInfo: {}, hasUserInfo: false, canIUseGetUserProfile: false, }, onLoad() { if (wx.getUserProfile) { this.setData({ canIUseGetUserProfile: true }) } }, getUserProfile(e) { // 推荐使用wx.getUserProfile获取用户信息,开发者每次通过该接口获取用户个人信息均需用户确认 // 开发者妥善保管用户快速填写的头像昵称,避免重复弹窗 wx.getUserProfile({ desc: 用于完善会员资料, // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写 success: (res) => { this.setData({ userInfo: res.userInfo, hasUserInfo: true }) console.log(res.userInfo) } }) }, getUserInfo(e) { // 不推荐使用getUserInfo获取用户信息,预计自2021年4月13日起,getUserInfo将不再弹出弹窗,并直接返回匿名的用户个人信息 console.log(e.detail.userInfo) this.setData({ userInfo: e.detail.userInfo, hasUserInfo: true, }) }, })
getUserInfo.wxml
<view class="container"> <view class="userinfo"> <block wx:if="{ {!hasUserInfo}}"> <button wx:if="{ {canIUseGetUserProfile}}" bindtap="getUserProfile"> 获取头像昵称 </button> <button wx:else open-type="getUserInfo" bindgetuserinfo="getUserInfo"> 获取头像昵称1 </button> </block> <block wx:else> <image bindtap="bindViewTap" class="userinfo-avatar" src="{ {userInfo.avatarUrl}}" mode="cover"></image> <text class="userinfo-nickname">{ {userInfo.nickName}}</text> </block> </view> </view>
getUserInfo以后不弹窗用getUserProfile替代
贴上小程序官方文档
上一篇:
uniapp开发微信小程序-2.页面制作