admin 管理员组文章数量: 887021
微信小程序实现常用添加图片功能, 预览, 删除(完整版)超详细
我们先来看看效果图吧
我们来看看代码是怎么实现的
wxml
<view class="img-li" wx:for="{{imgList}}" wx:key="index"><image class="uploading-icon" src="{{item}}"></image></view>
<view class="img-li" wx:if="{{imgList.length<=5}}" bindtap="chooseSource"><image class="uploading-icon" src="../../../img/icon/icon-uploading-gray.png"></image></view>
wxss
.img-li {width: 23%;height: 170rpx;margin-right: 20rpx;margin-bottom: 20rpx;
}
.img-li:nth-child(4) {margin-right: 0;
}
.img-li:first-child {margin-right: none;
}
.img-li image {width: 100%;height: 100%;
}
js 最主要部分
Page({/*** 页面的初始数据*/data: {imgList: []},// 点击添加选择chooseSource: function() {var _this = this;wx.showActionSheet({itemList: ["拍照", "从相册中选择"],itemColor: "#CED63A",success: function(res) {if(!res.cancel) {if(res.tapIndex == 0) {_this.imgWShow("camera") //拍照} else if (res.tapIndex == 1) {_this.imgWShow("album") //相册}}}})},// 点击调用手机相册/拍照imgWShow: function(type) {var _this = this;let len = 0;if(_this.data.imgList != null) {len = _this.data.imgList.length} //获取当前已有的图片wx.chooseImage({count: 6-len, //最多还能上传的图片数,这里最多可以上传5张sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有sourceType: [type], //可以指定来源是相册还是相机, 默认二者都有success: function(res) {wx.showToast({title: '正在上传...',icon: "loading",mask: true,duration: 1000})// 返回选定照片的本地文件路径列表,tempFilePaths可以作为img标签的scr属性显示图片var imgList = res.tempFilePathslet tempFilePathsImg = _this.data.imgList// 获取当前已上传的图片的数组var tempFilePathsImgs = tempFilePathsImg.concat(imgList)_this.setData({imgList: tempFilePathsImgs})},fail: function () {wx.showToast({title: '图片上传失败',icon: 'none'})return;}})},// 预览图片previewImg: function(e) {let index = e.target.dataset.index;let _this = this;wx.previewImage({current: _this.data.imgList[index],urls: _this.data.imgList})},// 点击删除deleteImg: function(e) {var _this = this;var imgList = _this.data.imgList;var index = e.currentTarget.dataset.index; //获取当前点击图片下标wx.showModal({title: '提示',content: '确认要删除该图片吗?',success: function(res) {if(res.confirm) {console.log("点击确定了")imgList.splice(index, 1);} else if (res.cancel) {console.log("点击取消了");return false}_this.setData({imgList})}})},
})
这里我写了一个限制最多上传6张图片,可以看一下官方文档
本文标签: 微信小程序实现常用添加图片功能 预览 删除(完整版)超详细
版权声明:本文标题:微信小程序实现常用添加图片功能, 预览, 删除(完整版)超详细 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1714949696h635918.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论