小程序如何获取昵称和头像
⼩程序如何获取昵称和头像
<open-data type="userAvatarUrl"></open-data>
之前是使⽤open-data获取昵称和头像,但是更新之后,⼩程序不再⽀持使⽤该⽅法
现在需要⽤wx.getUserProfile这个API获取⽤户信息。页⾯产⽣点击事件(如 button 上 bindtap 的回调中)后才可调⽤,每次请求都会弹出授权窗⼝,⽤户同意后返回 userInfo。该接⼝⽤于替换 wx.getUserInfo。
官⽅例⼦:
获取⽤户信息按官⽅的来即可。但是在登录⼩程序获取⼀次后我们需要把⽤户信息存起来,不能点击⼀次获取⼀次。
wxml⽂件:
<image class="userinfo-avatar" src="{{avatarUrl}}"></image>
<text class="userinfo-nickname" bindtap="getUserProfile">{{nickName}}</text>
js⽂件:
data:{
avatarUrl:"/utils/img/wdltx.png",//这⾥放了⼀张灰⾊头像图⽚
nickName:"点击获取头像和昵称",//⽤户昵称
}
getUserProfile(){
desc: '登录', // 声明获取⽤户个⼈信息后的⽤途,后续会展⽰在弹窗中,请谨慎填写
success: (res) => {
this.setData({
nickName: res.userInfo.nickName,
avatarUrl: res.userInfo.avatarUrl
})
wx.setStorage({    //数据缓存⽅法
key: 'nickName',  //关键字,本地缓存中指定的key
data: res.userInfo.nickName,    //缓存⽤户公开信息,
success: function() {      //缓存成功后,输出提⽰
匡威鞋店
油电混合动力车console.log('写⼊nickName缓存成功')
},
fail: function() {        //缓存失败后的提⽰
console.log('写⼊nickName发⽣错误')
}
})
wx.setStorage({    //数据缓存⽅法
key: 'avatarUrl',  //关键字,本地缓存中指定的key
data: res.userInfo.avatarUrl,    //缓存⽤户公开信息,
success: function() {      //缓存成功后,输出提⽰
console.log('写⼊avatarUrl缓存成功')
},
fail: function() {        //缓存失败后的提⽰
console.log('写⼊avatarUrl发⽣错误')
}
})孙中山的成就
}卷发如何盘发
})
有什么好看的发型
},
这样数据就缓存成功了。需要注意的是,使⽤的缓存⽅法wx.setStorage,那对应的获取数据时也要⽤wx.getStorage。如何获取缓存数据:
其他页⾯js:
data{
nickName:"",
avatarUrl:"",
}
key: 'nickName',
success (res) {
that.setData({
nickName:res.data
})
}
})
key: 'avatarUrl',
success (res) {
that.setData({
avatarUrl:res.data
})
遍插茱萸少一人全诗
}
})
这样就可以啦

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。