微信小程序怎样制作上传图片功能,并可多选、查看和删除
Admin 2022-11-19 群英技术资讯 785 次浏览
具体内容如下
用到的api
wx.chooseMedia(); 用于拍摄或从手机相册中选择图片或视频
功能:点击上传图片,可多选,或者拍照上传;点击图片放大查看;长按图片删除
效果图
json里面引用weui的组件uploader
{ "navigationBarTitleText": "评价工单", "usingComponents": { "mp-uploader": "weui-miniprogram/uploader/uploader", "mp-cells": "weui-miniprogram/cells/cells", "mp-cell": "weui-miniprogram/cell/cell" } }
wxml
<view class="weui-uploader"> <view class="img-v weui-uploader__bd"> <view class='pic' wx:for="{{technicianAssessPicture}}" wx:for-item="item" wx:key="*this"> <image class='weui-uploader__img ' src="{{item}}" data-index="{{index}}" mode="aspectFill" bindlongpress="deleteTechnician" bindtap="previewTechnician"> </image> </view> <view class="weui-uploader__input-box pic" bindtap="technicianImg"> </view> </view> </view>
js
data:(){ technicianAssessPicture: [], // 技师图片 } // 上传技师图片 technicianImg: function (e) { var that = this; var technicianAssessPicture = this.data.technicianAssessPicture; if (technicianAssessPicture.length >= 9) { this.setData({ lenMore: 1 }); setTimeout(function () { that.setData({ lenMore: 0 }); }, 2500); return false; } wx.chooseMedia({ count: 9, // 默认9 mediaType: ['image','video'], // 文件类型 // image 只能拍摄图片或从相册选择图片 // video 只能拍摄视频或从相册选择视频 // sizeType: ['original', 'compressed'], //所选的图片的尺寸 original原图,compressed压缩图 // 仅对 mediaType 为 image 时有效,是否压缩所选文件 sourceType: ['album', 'camera'], //图片和视频选择的来源 maxDuration: 30, // 拍摄视频最长拍摄时间,单位秒。时间范围为 3s 至 60s 之间。不限制相册。 camera: 'back', // 仅在 sourceType 为 camera 时生效,使用前置或后置摄像头 // back 使用后置摄像头;front 使用前置摄像头 success: function (res) { var tempFilePaths = res.tempFiles; var technicianAssessPicture = that.data.technicianAssessPicture; for (var i = 0; i < tempFilePaths.length; i++) { if (technicianAssessPicture.length >= 9) { that.setData({ technicianAssessPicture: technicianAssessPicture }); return false; } else { const tempFilePaths1 = tempFilePaths.map(v=>v.tempFilePath) // tempFilePaths数据是json数组,我们需要的是普通数组需要处理一下 technicianAssessPicture.push(tempFilePaths1[i]); } } that.setData({ technicianAssessPicture: technicianAssessPicture }); console.log(that.data.technicianAssessPicture, 'hhhhhhhhhhhhhhhhhhhhh'); } }); },
处理后打印出来的数据
预览,删除
// 预览图片 previewTechnician: function (e) { //获取当前图片的下标 var index = e.currentTarget.dataset.index; //所有图片 var technicianAssessPicture = this.data.technicianAssessPicture; wx.previewImage({ //当前显示图片 current: technicianAssessPicture[index], //所有图片 urls: technicianAssessPicture }) }, // 长按删除 deleteTechnician: function (e) { var that = this; var technicianAssessPicture = that.data.technicianAssessPicture; var index = e.currentTarget.dataset.index; // 获取当前长按图片下标 wx.showModal({ // cancelColor: 'cancelColor', title: '提示', content: '确定要删除此图片吗?', success: function (res) { if (res.confirm) { console.log('确定'); technicianAssessPicture.splice(index, 1); } else if (res.cancel) { console.log('取消'); return false; } that.setData({ technicianAssessPicture }) } }) },
到此,关于“微信小程序怎样制作上传图片功能,并可多选、查看和删除”的学习就结束了,希望能够解决大家的疑惑,另外大家动手实践也很重要,对大家加深理解和学习很有帮助。如果想要学习更多的相关知识,欢迎关注群英网络,小编每天都会给大家分享实用的文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于弱映射与弱集合的相关问题,下面一起来看一下,希望对大家有帮助。
排序算法类型有哪些?排序算法类型有冒泡排序、选择排序、插入排序、希尔排序、堆排序、快速排序、归并排序这些,那么用JavaScript怎样实现这些排序算法呢?感兴趣的有接下来就跟随小编来学习一下吧。
图片幻灯片是网页开发中的一个常见效果,可以用来展示商品广告,展示网站其他活动页面等等,这篇文章主要展示如何用原生JavaScript来实现一个简单的幻灯片。其效果为通过移动鼠标到相应的链接,下方同时展示对应的图片预留,以下是具体的代码。
目录打包后相对路径的引用解决办法解决JS、CSS等资源解决图片的引用问题vue cli打包相对路径遇到的坑打包后相对路径的引用vue打包部署后,访问是需要加上项目名这时候访问是使用绝对路径就会处问题了。解决办法把引用路径改为相对路径解决JS、CSS等资源打开build文件夹下的webpack.prod.conf.js,
对于弹幕相信经常看剧的朋友应该都比较了解,很多朋友喜欢开着弹幕看剧,那么我们想要自己实现弹幕效果,要怎样做呢?下面小编就给大家分享使用原生JS怎样实现弹幕效果的实例,感兴趣的朋友可以参考。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008