open-data
open-data 是一个内置组件,用于显示用户头像和昵称等信息。
<open-data type="userAvatarUrl"></open-data>
<open-data type="userNickName"></open-data>
wx.getUserInfo
2.10.4 之前需要做兼容,wx.getUserInfo 改版后不会弹出授权弹窗,如果已授权,则可调用成功,否则获取匿名用户个人信息,如果是在插件中调用且未授权则调用失败。
wx.getUserInfo({
success: (res) => {
console.log(res);
}
});
button open-type=“getUserInfo”
使用 button 组件实现授权。
<button open-type="getUserInfo" bind:getuserinfo="getUserInfo">授权</button>
getUserInfo(event) {
// 不推荐使用getUserInfo获取用户信息,
// 预计自2021年4月13日起,getUserInfo将不再弹出弹窗,
// 并直接返回匿名的用户个人信息
console.log(event.detail);
}
wx.getUserProfile
获取用户信息。页面产生点击事件(例如 button 上 bindtap 的回调中)后才可调用,每次请求都会弹出授权窗口,用户同意后返回 userInfo。该接口用于替换 wx.getUserInfo 。
<button bind:tap="getUserProfile">授权</button>
getUserProfile() {
// 推荐使用wx.getUserProfile获取用户信息,
// 开发者每次通过该接口获取用户个人信息均需用户确认,
// 开发者妥善保管用户快速填写的头像昵称,避免重复弹窗
wx.getUserProfile({
// 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写
desc: '展示用户信息',
success: (res) => {
console.log(res)
}
})
},
getSetting
基础库 1.2.0 开始支持,低版本需做兼容处理,它可用于获取用户权限状态。
wx.getSetting({
success (res) {
console.log(res.authSetting)
// res.authSetting = {
// "scope.userInfo": true, // 表示已授权用户信息
// "scope.userLocation": true // 表示已授权位置
// }
}
})
openSetting
基础库 1.1.0 开始支持,低版本需做兼容处理,调起客户端小程序设置界面,返回用户设置的操作结果。
wx.openSetting({
success (res) {
console.log(res.authSetting)
// res.authSetting = {
// "scope.userInfo": true, // 表示已授权
// "scope.userLocation": true // 表示已授权位置
// }
}
})