微信小程式儲存圖片到本地
阿新 • • 發佈:2021-07-10
參考:https://blog.csdn.net/qq_29483485/article/details/105421098
<view class="savecode" bindtap='saveToPhone'> 儲存二維碼 </view>
// 儲存圖片 saveToPhone(e){ // let imgSrc = e.currentTarget.dataset.url; //要儲存的圖片url // console.log(imgSrc) wx.showLoading({ title: '儲存中...' }) wx.downloadFile({//下載檔案資源到本地 url: this.data.imgUrl, success: function (res) { console.log(res); //圖片儲存到本地 wx.saveImageToPhotosAlbum({ filePath: res.tempFilePath, success: function (data) { wx.hideLoading() wx.showToast({ title: '儲存成功', icon:'success', duration: 2000 }) }, fail: function (err) { if (err.errMsg === "saveImageToPhotosAlbum:fail auth deny" || err.errMsg === "saveImageToPhotosAlbum:fail:auth denied") { console.log("當初使用者拒絕,再次發起授權") wx.showModal({ title:'提示', content: '需要您授權儲存相簿', showCancel: false, success: modalSuccess => { wx.openSetting({ success(settingdata) { console.log("settingdata", settingdata) if (settingdata.authSetting['scope.writePhotosAlbum']) { wx.showModal({ title: '提示', content: '獲取許可權成功,再次點選圖片即可儲存', showCancel: false, }) } else { wx.showModal({ title: '提示', content: '獲取許可權失敗,將無法儲存到相簿哦~', showCancel: false, }) } }, fail(failData) { console.log("failData", failData) }, complete(finishData) { console.log("finishData", finishData) } }) } }) } }, complete(res) { console.log(res); wx.hideLoading() } }) } }) },
說明:普通掃碼到手機無法儲存到手機上,真機測試掃碼可以儲存到本地,模擬器上也可以儲存到本地