微信小程序实现同时上传多张图片


Posted in Javascript onFebruary 03, 2020

本文实例为大家分享了微信小程序实现同时上传多张图片的具体代码,供大家参考,具体内容如下

1.图片选择后,路径已经存入list中:

data: { 
 images: [], //选择的图片 
 },

2.调用递归上传的方法:

wx.chooseImage({
 var that = this
 count: 9,
 sizeType: ['original', 'compressed'],
 sourceType: ['album', 'camera'],
 success: function(res){ 
 var successUp = 0; //成功,初始化为0
 var failUp = 0; //失败,初始化为0
 var length = that.data.images.length; //总共上传的数量
 var count = 0; //第几张,初始化为0
 var url = serverUrl + '/secondHand/uploadImg?id=' + secondHandId; //上传的接口
 //调用上传图片的公共函数
 that.uploadOneByOne(url, that.data.images, successUp, failUp, count, length);
 }, 
 });

3.递归上传方法:

/**
 * 上传图片:递归的方式上传
 * url:上传地址
 * imgPaths:上传的图片列表
 * successUp:上传成功的个数,初始化为0
 * failUp:上传失败的个数,初始化为0
 * count:第几张
 * length:图片列表的长度
 */
 uploadOneByOne(url, imgPaths, successUp, failUp, count, length) {
 var that = this;
 wx.uploadFile({
 url: url, //上传地址地址
 filePath: imgPaths[count],
 name: "file", //后台接收的文件名
 success: function(e) {
 successUp++; //成功+1
 },
 fail: function(e) {
 failUp++; //失败+1
 },
 complete: function(e) {
 count++; //下一张
 if (count == length) {
 TODO: 上传完毕后跳转页面
 wx.showToast({
 title: '发布成功',
 icon: 'success',
 duration: 2000
 })
 }
 else {
 //递归调用,上传下一张
 that.uploadOneByOne(url, imgPaths, successUp, failUp, count, length);
 }
 }
 })
 },

4.后台接口:

@PostMapping("/uploadImg")
public String addSecondHandImg(String id, @RequestParam("file") MultipartFile[] files) {
 //该接口被多次调用,这里写自己的业务,省略。。。
 return "";
}

文章参考:微信小程序实现上传多个文件 超过10个

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javaScript - 如何引入js代码
Mar 09 Javascript
jquery之empty()与remove()区别说明
Sep 10 Javascript
网站接入QQ登录的两种方法
Jul 22 Javascript
在线所见即所得HTML编辑器的实现原理浅析
Apr 25 Javascript
基于javascript实现全国省市二级联动下拉选择菜单
Jan 28 Javascript
纯js实现瀑布流布局及ajax动态新增数据
Apr 07 Javascript
基于React实现表单数据的添加和删除详解
Mar 14 Javascript
JavaScript实现隐藏省略文字效果的方法
Apr 27 Javascript
兼容浏览器的js事件绑定函数(详解)
May 09 Javascript
JS实现查找数组中对象的属性值是否存在示例
May 24 Javascript
JavaScript接口实现方法实例分析
May 16 Javascript
微信小程序学习之自定义滚动弹窗
Dec 20 Javascript
解决小程序无法触发SESSION问题
Feb 03 #Javascript
vue组件创建的三种方式小结
Feb 03 #Javascript
Vuex模块化应用实践示例
Feb 03 #Javascript
微信小程序8种数据通信的方式小结
Feb 03 #Javascript
使用js实现单链解决前端队列问题的方法
Feb 03 #Javascript
javscript 数组扁平化的实现
Feb 03 #Javascript
Vue强制组件重新渲染的方法讨论
Feb 03 #Javascript
You might like
PHP判断远程图片或文件是否存在的实现代码
2014/02/20 PHP
PHP中可以自动分割查询字符的Parse_str函数使用示例
2014/07/25 PHP
php实现分页显示
2015/11/03 PHP
Laravel配合jwt使用的方法实例
2020/10/25 PHP
PHP实现简单注册登录系统
2020/12/28 PHP
可拖动窗口,附带鼠标控制渐变透明,开启关闭功能
2006/06/26 Javascript
IE 缓存策略的BUG的解决方法
2007/07/21 Javascript
javascript 短路法代码精简
2009/08/20 Javascript
jquery 获取表单元素里面的值示例代码
2013/07/28 Javascript
jQuery CSS()方法改变现有的CSS样式
2014/08/20 Javascript
js日期插件dateHelp获取本月、三个月、今年的日期
2016/03/07 Javascript
javascript实现下雪效果【实例代码】
2016/05/03 Javascript
用jquery快速解决IE输入框不能输入的问题
2016/10/04 Javascript
基于JS实现的随机数字抽签实例
2016/12/08 Javascript
angularJS 发起$http.post和$http.get请求的实现方法
2017/05/18 Javascript
Bootstrap table使用方法汇总
2017/11/17 Javascript
Angular数据绑定机制原理
2018/04/17 Javascript
微信小程序日历插件代码实例
2019/12/04 Javascript
vue中音频wavesurfer.js的使用方法
2020/02/20 Vue.js
Element Card 卡片的具体使用
2020/07/26 Javascript
如何在selenium中使用js实现定位
2020/08/18 Javascript
python正则表达式抓取成语网站
2013/11/20 Python
Python中几个比较常见的名词解释
2015/07/04 Python
Python实现图像几何变换
2015/07/06 Python
python TCP Socket的粘包和分包的处理详解
2018/02/09 Python
推荐10款最受Python开发者欢迎的Python IDE
2018/09/16 Python
DES加密解密算法之python实现版(图文并茂)
2018/12/06 Python
深入了解Django中间件及其方法
2019/07/26 Python
flask框架jinja2模板与模板继承实例分析
2019/08/01 Python
在keras里面实现计算f1-score的代码
2020/06/15 Python
Python docutils文档编译过程方法解析
2020/06/23 Python
Champs Sports加拿大:北美最大的以商场为基础的专业运动鞋和服装零售商之一
2018/05/01 全球购物
质检员岗位职责
2015/02/03 职场文书
2016国庆节活动宣传语
2015/11/25 职场文书
《多彩的民间艺术》教学反思
2016/02/16 职场文书
庭外和解协议书
2016/03/23 职场文书