全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

微信小程序-拍照或选择图片并上传文件

微信小程序-拍照或选择图片并上传文件

调用拍照API:https://mp.weixin.qq.com/debug/wxadoc/dev/api/media-picture.html?t=20161222#wxchooseimageobject

上传文件API:https://mp.weixin.qq.com/debug/wxadoc/dev/api/network-file.html

主要js代码:

choice: function () { 
  var that = this 
  wx.chooseImage({ 
   count: 1, // 默认9 
   sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有 
   sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有 
   success: function (res) { 
    // 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片 
    var tempFilePaths = res.tempFilePaths 
    that.setData({ 
     textHidden: true, 
     image_photo: tempFilePaths, 
     photoHidden: false 
    }) 
   } 
  }) 
 }, 
 uploadPhoto: function () { 
  var that = this 
  let param = util.json2Form({ 
   tel: '18600346580', 
   orderSn: that.data.orderSn, 
   parkingPhoto: that.data.image_photo, 
  }); 
  wx.uploadFile({ 
   url: 'https://testapi.****.com/v4.0.0/uploadParkingPhoto', //仅为示例 
   filePath: that.data.image_photo[0], 
   name: 'parkingPhoto', 
   formData: { 
    'tel': '***********', 
    'orderSn': that.data.orderSn, 
   }, 
   success: function (res) { 
    var obj = JSON.parse(res.data);; 
    console.log(obj.result) 
    console.log(obj.msg) 
    var resule = obj.result; 
    var msg = obj.msg; 
    if (resule == 'false') { 
     wx.showToast({ 
      title: msg, 
      icon: 'success', 
      duration: 2000 
     }) 
    } else { 
     wx.navigateBack({ 
      delta: 1, 
      success: function (res) { 
       wx.showToast({ 
        title: msg, 
        icon: 'success', 
        duration: 2000 
       }) 
      }, 
 
     }) 
    } 
   } 
  }) 
 
 } 

Tip:

1.调用wx.chooseImage() 自动弹出选择窗口,不用调用操作菜单wx.showActionSheet(),否则重复

如图

2. 上传文件的时候filePath必须是数组,当你单张的时候需要使用数组,若只有一张要用[0]

3. 最需要注意的是,success返回数据是String类型,我们需要将String类型转换成Object

js字符串转换成obj

用js 是有三种方法的

  1. js自带的eval函数,其中需要添加小括号eval('('+str+')');
  2. JSON.parse(str)
  3. $.parseJSON( jsonstr )

但是在微信小程序中,我们只能用JSON.parse(str),其他的都不可以

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


# 微信小程序-拍照或选择图片并上传文件  # 微信小程序择图片并上传  # 微信小程序实现一张或多张图片上传(云开发)  # 微信小程序云开发(数据库)详解  # 微信小程序云开发详细教程  # 微信小程序云开发之新手环境配置  # 微信小程序云开发使用方法新手初体验  # 微信小程序实现文件、图片上传功能  # 微信小程序实现云开发上传文件、图片功能  # 都有  # 上传文件  # 转换成  # 的是  # 都不  # 是有  # 当你  # 其他的  # 希望能  # 要用  # 仅为  # 三种  # 如图  # 自带  # 谢谢大家  # 只能用  # 需要注意  # 自动弹出  # 但是在  # wx 


相关文章: 如何通过虚拟机搭建网站?详细步骤解析  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  宝塔建站助手安装配置与建站模板使用全流程解析  如何通过宝塔面板实现本地网站访问?  建站之星安装后界面空白如何解决?  济南网站制作的价格,历城一职专官方网站?  如何在自有机房高效搭建专业网站?  家庭服务器如何搭建个人网站?  成都网站制作价格表,现在成都广电的单独网络宽带有多少的,资费是什么情况呢?  如何使用Golang table-driven基准测试_多组数据测量函数效率  如何选择域名并搭建高效网站?  名字制作网站免费,所有小说网站的名字?  宝塔建站无法访问?如何排查配置与端口问题?  php json中文编码为null的解决办法  购物网站制作公司有哪些,哪个购物网站比较好?  制作旅游网站html,怎样注册旅游网站?  如何挑选高效建站主机与优质域名?  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  官网建站费用明细查询_企业建站套餐价格及收费标准指南  如何优化Golang Web性能_Golang HTTP服务器性能提升方法  Swift开发中switch语句值绑定模式  网站微信制作软件,如何制作微信链接?  在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?  学校建站服务器如何选型才能满足性能需求?  阿里云网站搭建费用解析:服务器价格与建站成本优化指南  成都响应式网站开发,dw怎么把手机适应页面变成网页?  建站168自助建站系统:快速模板定制与SEO优化指南  python的本地网站制作,如何创建本地站点?  英语简历制作免费网站推荐,如何将简历翻译成英文?  网站制作网站,深圳做网站哪家比较好?  宝塔面板创建网站无法访问?如何快速排查修复?  深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?  javascript中的try catch异常捕获机制用法分析  如何配置支付宝与微信支付功能?  深圳网站制作平台,深圳市做网站好的公司有哪些?  如何在腾讯云免费申请建站?  ,怎么在广州志愿者网站注册?  浅谈Javascript中的Label语句  网站制作中优化长尾关键字挖掘的技巧,建一个视频网站需要多少钱?  如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?  攀枝花网站建设,攀枝花营业执照网上怎么年审?  北京营销型网站制作公司,可以用python做一个营销推广网站吗?  Bpmn 2.0的XML文件怎么画流程图  广东企业建站网站优化与SEO营销核心策略指南  如何快速生成专业多端适配建站电话?  微信推文制作网站有哪些,怎么做微信推文,急?  建站之星如何保障用户数据免受黑客入侵?  Python如何创建带属性的XML节点  ,有什么在线背英语单词效率比较高的网站?  建站10G流量真的够用吗?如何应对访问高峰? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。