uni-app圖片預(yù)覽及長(zhǎng)按保存功能實(shí)現(xiàn)(超實(shí)用!)
做項(xiàng)目時(shí)用戶總說(shuō)圖片不能保存?一行代碼實(shí)現(xiàn)圖片預(yù)覽,長(zhǎng)按還能保存到相冊(cè),安排!
實(shí)現(xiàn)代碼
html
預(yù)覽
<!-- template 里寫圖片列表 -->
<view class="img-list">
<image
v-for="(item, index) in imgList"
:key="index"
:src="item"
class="img-item"
@click="previewImg(index)"
></image>
</view>
javascript
運(yùn)行
export default {
data() {
return {
// 圖片列表,換成你的圖片地址
imgList: [
"https://xxx.com/img1.jpg",
"https://xxx.com/img2.jpg",
"https://xxx.com/img3.jpg"
]
};
},
methods: {
// 預(yù)覽圖片
previewImg(current) {
uni.previewImage({
current: current, // 當(dāng)前點(diǎn)擊的圖片索引
urls: this.imgList, // 所有要預(yù)覽的圖片列表
longPressActions: {
// 長(zhǎng)按顯示的操作菜單
itemList: ["保存圖片", "分享圖片"],
success: (res) => {
if (res.tapIndex === 0) {
// 點(diǎn)擊保存圖片
this.saveImg(this.imgList[current]);
}
}
}
});
},
// 保存圖片到相冊(cè)
saveImg(imgUrl) {
uni.saveImageToPhotosAlbum({
filePath: imgUrl,
success: () => {
uni.showToast({
title: "保存成功",
icon: "success"
});
},
fail: (err) => {
// 用戶拒絕授權(quán)時(shí)提示
if (err.errMsg.includes("auth deny")) {
uni.showToast({
title: "請(qǐng)開啟保存圖片權(quán)限",
icon: "none"
});
}
}
});
}
}
};
加個(gè)簡(jiǎn)單樣式
css
.img-list {
display: flex;
flex-wrap: wrap;
gap: 10rpx;
padding: 20rpx;
}
.img-item {
width: 30%;
height: 200rpx;
border-radius: 8rpx;
}
?? 權(quán)限提醒:保存圖片需要用戶授權(quán),第一次點(diǎn)擊會(huì)彈出授權(quán)提示,記得引導(dǎo)用戶允許!
總結(jié)
到此這篇關(guān)于uni-app圖片預(yù)覽及長(zhǎng)按保存功能實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)uni-app圖片預(yù)覽長(zhǎng)按保存內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用Vue實(shí)現(xiàn)調(diào)用接口加載頁(yè)面初始數(shù)據(jù)
今天小編就為大家分享一篇使用Vue實(shí)現(xiàn)調(diào)用接口加載頁(yè)面初始數(shù)據(jù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-10-10
vue3使用vite搭建的項(xiàng)目需要安裝的插件/配置方式
這篇文章主要介紹了vue3使用vite搭建的項(xiàng)目需要安裝的插件/配置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-03-03
vuejs項(xiàng)目打包之后的首屏加載優(yōu)化及打包之后出現(xiàn)的問(wèn)題
這篇文章主要介紹了vuejs項(xiàng)目打包之后的首屏加載優(yōu)化及打包之后可能出現(xiàn)的問(wèn)題,需要的朋友可以參考下2018-04-04
vue項(xiàng)目用后端返回的文件流實(shí)現(xiàn)docx和pdf文件預(yù)覽
本文主要介紹了vue項(xiàng)目用后端返回的文件流實(shí)現(xiàn)docx和pdf文件預(yù)覽,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04
vue實(shí)現(xiàn)token登錄驗(yàn)證的完整實(shí)例
最近公司新啟動(dòng)了個(gè)項(xiàng)目,用的是vue框架在做,下面這篇文章主要給大家介紹了關(guān)于vue實(shí)現(xiàn)token登錄驗(yàn)證的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-04-04
Vue+OpenLayers進(jìn)行項(xiàng)目開發(fā)的完整指南
在前端開發(fā)中,OpenLayers?是一個(gè)強(qiáng)大的開源地圖庫(kù),可以用于?WebGIS?開發(fā),下面小編就來(lái)和大家詳細(xì)講講Vue使用OpenLayers進(jìn)行項(xiàng)目開發(fā)的具體步驟2025-06-06

