微信小程序 wx.uploadFile在安卓手机上面the same task is working问题解决


Posted in Javascript onDecember 14, 2016

微信小程序 wx.uploadFile在安卓手机上面the same task is working问题解决

微信小程序上传图片的时候,如果是多图片上传,一般都是直接用一个循环进行wx.uploadFile

这个在电脑上面测试与苹果手机上面都不会有什么问题

但当用安卓测试的时候,你会发现小程序会提示一个the same task is working

wx.uploadFile不能并行,因为wx.uploadFile是一个异步函数,所以循环的时候在安卓手机上会出现并行

解决的方法

做一个上传完的标识,然后

用递归算法进行上传

在上传成功的回调函数里面,直接递归,标识满足直接跳出,完成所有图片上传

贴上个代码段

//上传标识
var i=0
//imglist为要上传图片的路径数组
uploadImg: function () {  
  var that = this
  if (i == imglist.length) {
  //清空还原
   news = ""
   city = ""
    i=0
   wait = true
   imglist = []
   serverImg = []
   retrunList = []
   that.setData({
    loding: false,
    src: [],
    disabled: false
   })
   return;
  }
   var imgcount = imglist.length;
   wx.uploadFile({
    url: config.serverUrl('index.php/user/uploadtu'),
    filePath: imglist[i],
    name: 'file',
    formData: { 'user': 'test' },
    success: function (res) {
     serverImg.push(res.data)
     if (imgcount == serverImg.length) {
      var serverImgStr = serverImg.join("|")
      wx.request({
       url: config.serverUrl('index.php/user/baobeiadd'),
       method: 'POST',
       data: Util.json2Form({
        imglist: serverImgStr,
        userId: userId,
        news: news,
        city: city,
        latitude: latitude,
        longitude: longitude
       }),
       header: {
        'content-type': 'application/x-www-form-urlencoded'
       },
       success: function (res2) {
        if (res2.data.state == "ok") {
 
         that.setData({
          loding: false,
          butTxt: "发布",
          disabled: false
         })
          
         Util.mesUrl("发布成功!", "../index/index")
        }
        else {
         Util.mes("描述至少10人字以上哦,还有图片也要选哦!")
        }
       }
      })
     }else
     {
     //这里直接递归
     i++;
     that.uploadImg();
     }
    },
    fail: function (e) {
     console.log(e)
     Util.mes("图片上传失败,请重新发布!" + i)
    }
   })
 
 },

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
JavaScript面向对象之静态与非静态类
Feb 03 Javascript
js简单的弹出框有关闭按钮
May 05 Javascript
动态加载iframe时get请求传递中文参数乱码解决方法
May 07 Javascript
JavaScript lastIndexOf方法入门实例(计算指定字符在字符串中最后一次出现的位置)
Oct 17 Javascript
使用canvas实现仿新浪微博头像截取上传功能
Sep 02 Javascript
图解JavaScript中的this关键字
May 28 Javascript
JS原型对象的创建方法详解
Jun 16 Javascript
JS函数多个参数默认值指定方法分析
Nov 28 Javascript
Vue.js中用v-bind绑定class的注意事项
Dec 13 Javascript
koa大型web项目中使用路由装饰器的方法示例
Apr 02 Javascript
解决layui 三级联动下拉框更新时回显的问题
Sep 03 Javascript
Vue自定义多选组件使用详解
Sep 08 Javascript
bootstrap模态框实现拖拽效果
Dec 14 #Javascript
AngularJS基于ui-route实现深层路由的方法【路由嵌套】
Dec 14 #Javascript
基于JS实现弹出一个隐藏的div窗口body页面变成灰色并且不可被编辑
Dec 14 #Javascript
Bootstrap实现圆角、圆形头像和响应式图片
Dec 14 #Javascript
BootStrap 下拉菜单点击之后不会出现下拉菜单(下拉菜单不弹出)的解决方案
Dec 14 #Javascript
深入理解jquery中的each用法
Dec 14 #Javascript
Bootstrap基本模板的使用和理解1
Dec 14 #Javascript
You might like
海贼王动画变成“真人”后,凯多神还原,雷利太帅了!
2020/04/09 日漫
PHP 获取ip地址代码汇总
2015/07/05 PHP
PHP 实现页面静态化的几种方法
2017/07/23 PHP
Yii 访问 Gii(脚手架)时出现 403 错误
2018/06/06 PHP
让IE8支持DOM 2(不用框架!)
2009/12/31 Javascript
通过Jscript中@cc_on 语句识别IE浏览器及版本的代码
2011/05/07 Javascript
jquery遍历筛选数组的几种方法和遍历解析json对象
2013/12/13 Javascript
使用POST方式弹出窗口的两种方法示例介绍
2014/01/29 Javascript
JS实现无限级网页折叠菜单(类似树形菜单)效果代码
2015/09/17 Javascript
vue双向绑定的简单实现
2016/12/22 Javascript
vue v-on监听事件详解
2017/05/17 Javascript
jQuery实现手机号正则验证输入及自动填充空格功能
2018/01/02 jQuery
js实现简单进度条效果
2020/03/25 Javascript
javascript设计模式 ? 中介者模式原理与用法实例分析
2020/04/20 Javascript
Vue 解决通过this.$refs来获取DOM或者组件报错问题
2020/07/28 Javascript
python使用PythonMagick将jpg图片转换成ico图片的方法
2015/03/26 Python
python图像处理之镜像实现方法
2015/05/30 Python
Python学习思维导图(必看篇)
2017/06/26 Python
Python实现的用户登录系统功能示例
2018/02/05 Python
VScode编写第一个Python程序HelloWorld步骤
2018/04/06 Python
python pexpect ssh 远程登录服务器的方法
2019/02/14 Python
pycharm new project变成灰色的解决方法
2019/06/27 Python
python多线程并发实例及其优化
2019/06/27 Python
python中时间、日期、时间戳的转换的实现方法
2019/07/06 Python
Python使用百度翻译开发平台实现英文翻译为中文功能示例
2019/08/08 Python
PyTorch 随机数生成占用 CPU 过高的解决方法
2020/01/13 Python
python3操作注册表的方法(Url protocol)
2020/02/05 Python
python中xlrd模块的使用详解
2021/02/01 Python
逼真的HTML5树叶飘落动画
2016/03/01 HTML / CSS
地球鞋加拿大官网:Earth Shoes Canada
2020/11/17 全球购物
创建索引时需要注意的事项
2013/05/13 面试题
2014院党委领导班子及其成员群众路线对照检查材料思想汇报
2014/10/04 职场文书
个人作风建设剖析材料
2014/10/11 职场文书
优秀员工自荐书
2015/03/06 职场文书
幼儿园毕业致辞
2015/07/29 职场文书
PyQt5实现多张图片显示并滚动
2021/06/11 Python