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


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 相关文章推荐
js获取url参数的使用扩展实例
Dec 29 Javascript
锋利的jQuery 要点归纳(一) jQuery选择器
Mar 21 Javascript
Array, Array Constructor, for in loop, typeof, instanceOf
Sep 13 Javascript
JS对象转换为Jquery对象示例
Jan 26 Javascript
Jquery $.getJSON 在IE下的缓存问题解决方法
Oct 10 Javascript
学习javascript面向对象 掌握创建对象的9种方式
Jan 04 Javascript
jQuery实现对象转为url参数的方法
Jan 11 Javascript
JavaScript简单计算人的年龄示例
Apr 15 Javascript
laravel5.3 vue 实现收藏夹功能实例详解
Jan 21 Javascript
Vue中使用vue-i18插件实现多语言切换功能
Apr 25 Javascript
微信小程序功能之全屏滚动效果的实现代码
Nov 22 Javascript
编写更好的JavaScript条件式和匹配条件的技巧(小结)
Jun 27 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类
2006/11/27 PHP
php 输出双引号"与单引号'的方法
2010/05/09 PHP
修改PHP的memory_limit限制的方法分享
2012/02/21 PHP
php遍历目录输出目录及其下的所有文件示例
2014/01/27 PHP
php从字符串创建函数的方法
2015/03/16 PHP
php清除和销毁session的方法分析
2015/03/19 PHP
php设计模式之策略模式实例分析【星际争霸游戏案例】
2020/03/26 PHP
GreyBox技术总结(转)
2010/11/23 Javascript
Javascript继承机制的设计思想分享
2011/08/28 Javascript
js字符串转换成数字与数字转换成字符串的实现方法
2014/01/08 Javascript
javascript实现的图片切割多块效果实例
2015/05/07 Javascript
bootstrap为水平排列的表单和内联表单设置可选的图标
2017/02/15 Javascript
基于casperjs和resemble.js实现一个像素对比服务详解
2018/01/10 Javascript
vue单页开发父子组件传值思路详解
2018/05/18 Javascript
vue 中动态绑定class 和 style的方法代码详解
2018/06/01 Javascript
Vue.js 中取得后台原生HTML字符串 原样显示问题的解决方法
2018/06/10 Javascript
详解vue路由篇(动态路由、路由嵌套)
2019/01/27 Javascript
vue-cli创建的项目中的gitHooks原理解析
2020/02/14 Javascript
Python网络爬虫出现乱码问题的解决方法
2017/01/05 Python
Django自定义用户认证示例详解
2018/03/14 Python
Django Form 实时从数据库中获取数据的操作方法
2019/07/25 Python
scrapy框架携带cookie访问淘宝购物车功能的实现代码
2020/07/07 Python
Python pymysql模块安装并操作过程解析
2020/10/13 Python
Python入门基础之数字字符串与列表
2021/02/01 Python
详解css3 flex弹性盒自动铺满写法
2020/09/17 HTML / CSS
基于canvas的骨骼动画的示例代码
2018/06/12 HTML / CSS
Html5自定义字体解决方法
2019/10/09 HTML / CSS
JSP&Servlet技术面试题
2015/05/21 面试题
大专应届生个人简历的自我评价
2013/10/15 职场文书
医学护理毕业生自荐信
2013/11/07 职场文书
伊索寓言教学反思
2014/05/01 职场文书
优秀教导主任事迹材料
2014/05/09 职场文书
学生安全责任书模板
2014/07/25 职场文书
python实现的web监控系统
2021/04/27 Python
MySQL中你可能忽略的COLLATION实例详解
2021/05/12 MySQL
Python socket如何解析HTTP请求内容
2022/02/12 Python