1,在utils 文件夹的common.js 中复制粘贴以下代码
// 下载图片
function downloadImg(imgSrc) {
wx.showLoading({
title: '保存中...'
})
wx.downloadFile({ //下载文件资源到本地
url: imgSrc,
success: function (res) {
console.log(res, 'resttrrr')
//图片保存到本地
wx.saveImageToPhotosAlbum({
filePath: res.tempFilePath,
success: function (data) {
console.log(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) {
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()
}
})
}
})
}
module.exports.downloadImg = downloadImg; //保存图片至相册
2,view页面示例
<view bindtap="downImg" >点击下载图片<view>
3.在js中引入并使用
var common = require('../../../utils/common.js');
var url='xxxxxxxxxxxxx', //图片路径
downImg(){
common.downloadImg(this.data.url)
},