button组件获取用户信息
收藏
我的收藏支持通过 button 组件获取用户信息能力,需要将 button 组件 open-type 的值设置为 getUserInfo。
获取已登录用户的基本信息,首次使用的用户会弹出授权提示窗,若用户同意,则会返回用户的真实数据。
属性说明
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
open-type | string | | 是 | 用于调用开放能力,此场景下需要设置为 "getUserInfo" | 2.87.0 |
bindgetuserinfo | EventHandle | | 否 | 监听获取用户信息的回调,open-type="getUserInfo"时有效 | 2.87.0 |
bindgetuserinfo 事件对象的 detail
object 类型,属性如下:
属性名 | 类型 | 说明 | 最低支持版本 |
errMsg | string | 回调描述
| 2.87.0 |
userInfo | UserInfo | 用户信息 | 2.87.0 |
rawData | string | userInfo 的 JSON 字符串形式 | 2.87.0 |
UserInfo 类型说明
object 类型,属性如下:
属性名 | 类型 | 说明 | 最低支持版本 |
avatarUrl | string | 用户头像 | 2.87.0 |
nickName | string | 用户名 | 2.87.0 |
gender | number | 用户性别,0: 未知;1:男性;2:女性 | 2.87.0 |
city | string | 用户城市 | 2.87.0 |
province | string | 用户省份 | 2.87.0 |
country | string | 用户国家 | 2.87.0 |
language | string | 用户语言,目前为空 | 2.87.0 |
错误说明
errMsg | 说明 | 最低支持版本 |
"getUserInfo:fail not login" | 用户未登录 | 2.87.0 |
"getUserInfo:fail auth deny" | 用户信息权限未打开。可在小程序右上角菜单 -> 设置中打开 | 2.87.0 |
扫码体验
代码示例
<button open-type="getUserInfo" bindgetuserinfo="getUserInfo" > 获取用户信息 </button>
Page({ data: { userInfo: '', errMsg: '', rawData: '', }, onLoad() { // 用户登录后才能获取用户信息 tt.login({ success: () => { tt.showToast({ title: '登录成功', }); }, fail: () => { tt.showToast({ title: '登录失败', icon: "fail", }); }, }); }, getUserInfo(res) { const { userInfo, errMsg, rawData } = res.detail; this.setData({ userInfo, errMsg, rawData }); } })
Bug & Tip
无。