小程序保存网络图片时发现保存的是以.bin为后缀的文件,无法正常识别,参考网上的例子重新弄了一下,在此记录
// 保存图片(主要针对授权的几种不同情况判断)
saveCard() {
let that = this
wx.getSetting({
success: (res) => {
if (res.authSetting['scope.writePhotosAlbum']) {
that.saveImg()
} else if (res.authSetting['scope.writePhotosAlbum'] === undefined) {
wx.authorize({
scope: 'scope.writePhotosAlbum',
success() {
that.saveImg()
},
fail() {
wx.showToast({
title: '您没有授权,无法保存到相册',
icon: 'none'
})
}
})
} else {
wx.openSetting({
success(res) {
if (res.authSetting['scope.writePhotosAlbum']) {
that.saveImg()
} else {
wx.showToast({
title: '您没有授权,无法保存到相册',
icon: 'none'
})
}
}
})
}
}
})
},
saveImg() {
let that = this;
//文件名设置为时间戳
let fileName = new Date().valueOf();
wx.downloadFile({ //下载图片到本地
url: that.cardBackImg,
filePath: wx.env.USER_DATA_PATH + '/' + fileName + '.png',
success(res) {
console.log(res)
if (res.statusCode === 200) {
debugger
let img = res.filePath
wx.saveImageToPhotosAlbum({ //只支持本地图片所以要先把图片下载下来
filePath: img,
success(result) {
console.log(result)
wx.showToast({
title: '已保存至相册',
icon: "none",
})
},
fail(res) {
console.log(result)
wx.showToast({
title: '保存失败',
icon: "none",
})
}
})
}
}
})
},