傳統接口wx.getUserInfo的效果會彈出一個給用戶的彈窗,需要用戶授權,但是在使用時候會有官方log提醒你,這個方法需要升級。新方法則無需用戶授權,使用方法如下:
<open-data type="userAvatarUrl"></open-data> //獲取用戶頭像直接顯示在小程序中
<open-data type="userNickName" lang="zh_CN"></open-data> //獲取用戶暱稱直接顯示在小程序中
這樣即可獲取用戶頭像及微信名。前兩天聖誕節在製作戴帽子小程序的時候需要獲取當前用戶頭像並修改,需要將圖片加載到另外一個<image>
框裏,但這個標籤也可以選擇相冊裏的照片,所以通過按鈕來實現功能,按鈕標籤如下:
<button open-type="getUserInfo" data-way="avatar" bind:tap="getAvatar" >獲取當前頭像</button>
對應的js代碼如下:
getAvatar() {
if (app.globalData.userInfo) {
console.log("獲取成功"),
this.setData({
bgPic: app.globalData.userInfo.avatarUrl,
});
this.assignPicChoosed();
} else {
// 在沒有 open-type=getUserInfo 版本的兼容處理
wx.getUserInfo({
success: res => {
app.globalData.userInfo = res.userInfo;
console.log("已獲取"),
this.setData({
userInfo: res.userInfo,
bgPic: res.userInfo.avatarUrl
});
this.assignPicChoosed();
}
})
}
},
但是事情並沒有像我們想象的那麼順利,因爲你在進行到保存功能時匯給你報錯。說download地址不合法。此時你需要進入小程序後臺
往下翻找到服務器域名,然後將downloadfile合法域名加進去
結束收工