不填longPressActions,有默认保存相册的选项,但是必须退出预览才能保存成功。所以要写longPressActions
由于uni.saveImageToPhotosAlbum保存到相册不能使用网络路径,所以要先使用uni.downloadFile下载下来获得本地路径
<block v-for="(item,index) in info.images" :key="index">
<image :src="item" mode="aspectFill" @tap="previewImage(index)"></image>
</block>
// 预览图片
previewImage(index){
let that = this
uni.previewImage({
current:index,
urls:that.info.images,
longPressActions :{
itemList:['保存图片'],
success(data) {
let imgurl = that.info.images[data.index]
that.saveImage(imgurl)
}
},
})
},
saveImage(imgurl){
console.log(imgurl)
uni.downloadFile({
url:imgurl,
success(res){
console.log(res)
let url = res.tempFilePath
uni.saveImageToPhotosAlbum({
filePath:url,
success() {
uni.showToast({
title:'保存成功',
icon:"none"
})
},
fail(err) {
uni.showToast({
title:'保存失败',
icon:"none"
})
}
})
}
})
},