小程序開發中圖片列表的需求再常見不過了,一般都會配合大圖預覽和圖片下載的功能javascript
可是微信又沒有提供可自定義的圖片預覽功能,有時候會有需求在預覽大圖的時候收藏或者下載啥的用 wx.previewImage 就不太合適了html
下面提供了一個 照片牆實現自定義圖片預覽和多圖下載 的實現方式,有相似需求的同窗能夠嘗試一下java
有問題也歡迎提出 GITHUBgit
小程序照片牆/自定義大圖預覽/多圖下載github
npm install --save --production mp-photo-album
{ "usingComponents": { "mp-photo-album": "/miniprogram_npm/mp-photo-album/index" } }
<comp list="{{list}}" bindlike="like" bindclose="finish" likeTitle="收藏"></comp>
[{ src: 'https://raw.githubusercontent.com/panmenglin/mp-photo-album/transform/common/images/Desert1.jpg', // 原圖 previewSrc: 'https://raw.githubusercontent.com/panmenglin/mp-photo-album/transform/common/images/Desert1_1280.jpg', // 預覽大圖 listSrc: 'https://raw.githubusercontent.com/panmenglin/mp-photo-album/transform/common/images/Desert1_200.jpg', // 列表小圖 desc: '圖片描述', // 圖片描述 check: false // 是否選中 }]
likeTitle npm
自定義按鈕文字json
bindlike小程序
自定義按鈕事件微信
bindclose數據結構
關閉預覽回調
選擇多圖,點擊下載保存到相冊,最多同時9張
<comp list="{{list}}" option="{{option}}" bindfinish="finish"></comp> <view wx:if="{{option !== 'download'}}" bindtap="select">選擇</view> <view wx:if="{{option === 'download'}}" bindtap="finish">完成</view>
配置
option [默認] normal
用來切換操做方式
切換爲 download 時,則能夠選擇並進行下載
bindfinish
點擊下載的回調