uniapp 小程序获取用户信息 uni.getUserInfo
2021-10-21 本文已影响0人
zhudying
在uni微信小程序中,获取用户信息, 微信基础库2.10.4 以前的版本 使用uni.getUserInfo ,之后的使用uni.getUserProfile
- getUserInfo 用法
注:微信基础库2.10.4版本对用户信息相关接口进行了调整,使用 uni.getUserInfo 获取得到的 userInfo 为匿名数据,建议使用 uni.getUserProfile 获取用户信息。
// html 部分,通过open-type="getUserInfo" 中getuserinfo函数返回用户信息
<button type="default" open-type="getUserInfo" @getuserinfo="appLoginWx">微信登录</button>
// js 部分
appLoginWx(){
// 获取用户信息
uni.getUserInfo({
provider: 'weixin',
lang:'zh_CN',
success: userInfo=> {
console.log(userInfo,'userInfo');
uni.login({
provider: 'weixin',
success: loginInfo=> {
console.log(loginInfo,'loginInfo');
}
});
},
fail:err=>{
console.log(err,'err')
}
});
}
- getUserProfile用法
注:推荐使用
// html
<button type="default" @tap="appLoginWx" >微信登录</button>
// js
appLoginWx(){
// 获取用户信息
// 注意 getUserProfile 不支持在事件中使用异步操作
// 否则会触发错误:{errMsg: "getUserProfile:fail can only be invoked by user TAP gesture."}
uni.getUserProfile({
lang: 'zh_CN',
desc:'获取用户信息',
success: userInfo=> {
console.log(userInfo,'userInfo');
uni.login({
provider: 'weixin',
success: loginInfo=> {
console.log(loginInfo,'loginInfo');
}
});
},
fail:err=>{
console.log(err,'err')
}
});
}