一、描述

如果使用老版一点的弹起授权框进行授权获取头像和昵称的话,会由于基础库版本问题,显示不了,并且这个接口存在调整问题,不是很好搞!

具体可以看看这里:

小程序用户头像昵称获取规则调整公告 | 微信开放社区 (qq.com)

wx.getUserInfo这个api也是可以获取到真实的头像和昵称的,但是要调基础库。

目前,我暂时采用这种方式,并且这个方式在真机调试中可以正常使用,所以我就先采用了这种方式。

<u-popup v-model="show" border-radius="20" mode="bottom">

			<view class="popup-box">
				<view class="clsoe-box" @click="onclose">
					<image src="../../static/user/close.png" mode="" class="close-icon"></image>
				</view>
				<view class="wx">
					<view class="wx-input">
						<view class="">
							头像
						</view>
						<button type="avatar-wrapper" open-type="chooseAvatar" @chooseavatar="onChooseavatar"
							class="btn">
							<image :src='avatarimg' class="wx-avatar"></image>
						</button>
					</view>
					<view class="wx-input">
						<view class="">
							昵称
						</view>
						<input type="nickname" class="usernickname" placeholder="请输入昵称" @blur="onblur" />
					</view>

				</view>
				<view class="done" @click="done()">
					确认
				</view>
			</view>
		</u-popup>

头像的关键代码:

<button type="avatar-wrapper" open-type="chooseAvatar" @chooseavatar="onChooseavatar"
							class="btn">
							<image :src='avatarimg' class="wx-avatar"></image>
						</button>
onChooseavatar(e) {
				console.log("头像", e);
				this.avatarimg = e.detail.avatarUrl
			},

昵称的关键代码:

<input type="nickname" class="usernickname" placeholder="请输入昵称" @blur="onblur" />
onblur(e) {
				console.log("昵称", e);
				this.wxname = e.detail.value
			},

实际效果就是:

更多推荐