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


Posted in Javascript onJanuary 06, 2017

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

调用拍照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),其他的都不可以

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

Javascript 相关文章推荐
理解 JavaScript 预解析
Oct 25 Javascript
jQuery基础知识filter()和find()实例说明
Jul 06 Javascript
javascript中常用编程知识
Apr 08 Javascript
JS对象转换为Jquery对象实现代码
Dec 29 Javascript
解决angular的$http.post()提交数据时后台接收不到参数值问题的方法
Dec 10 Javascript
js组件SlotMachine实现图片切换效果制作抽奖系统
Apr 17 Javascript
JavaScript+Java实现HTML页面转为PDF文件保存的方法
May 30 Javascript
聊一聊Vue.js过渡效果
Sep 07 Javascript
TableSort.js表格排序插件使用方法详解
Feb 10 Javascript
angular动态删除ng-repaeat添加的dom节点的方法
Jul 20 Javascript
Vue2(三)实现子菜单展开收缩,带动画效果实现方法
Apr 28 Javascript
jQuery实现简单评论区功能
Oct 26 jQuery
ajax异步请求详解
Jan 06 #Javascript
微信小程序 限制1M的瘦身技巧与方法详解
Jan 06 #Javascript
微信小程序 二维码canvas绘制实例详解
Jan 06 #Javascript
微信小程序 小程序制作及动画(animation样式)详解
Jan 06 #Javascript
JS调用Android、Ios原生控件
Jan 06 #Javascript
JS正则匹配中文的方法示例
Jan 06 #Javascript
JS正则匹配URL网址的方法(可匹配www,http开头的一切网址)
Jan 06 #Javascript
You might like
用php的ob_start来生成静态页面的方法分析
2011/03/09 PHP
php数组函数序列之array_push() 数组尾部添加一个或多个元素(入栈),返回新长度。
2011/11/07 PHP
php地址引用(php地址引用的效率问题)
2012/03/23 PHP
php计算数组不为空元素个数的方法
2014/01/27 PHP
PHP实现对图片的反色处理功能【测试可用】
2018/02/01 PHP
用js实现的仿sohu博客更换页面风格(简单版)
2007/03/22 Javascript
Ajax执行顺序流程及回调问题分析
2012/12/10 Javascript
js写一个字符串转成驼峰的实例
2013/06/21 Javascript
jquery用offset()方法获得元素的xy坐标
2014/09/06 Javascript
JavaScript解析json格式数据简单示例
2014/12/09 Javascript
node.js中的buffer.Buffer.isBuffer方法使用说明
2014/12/14 Javascript
JQuery实现可直接编辑的表格
2015/04/16 Javascript
Jquery AJAX POST与GET之间的区别详细介绍
2016/10/17 Javascript
JS实现重新加载当前页面
2016/11/29 Javascript
利用js来实现缩略语列表、文献来源链接和快捷键列表
2016/12/16 Javascript
Vue.js中该如何自己维护路由跳转记录
2019/05/19 Javascript
OpenLayers3实现地图鹰眼以及地图比例尺的添加
2020/09/25 Javascript
vue项目配置 webpack-obfuscator 进行代码加密混淆的实现
2021/02/26 Vue.js
[46:40]VGJ.T vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
Python编写屏幕截图程序方法
2015/02/18 Python
Python实现Smtplib发送带有各种附件的邮件实例
2017/06/05 Python
Python 逐行分割大txt文件的方法
2017/10/10 Python
django将数组传递给前台模板的方法
2019/08/06 Python
Python实现RabbitMQ6种消息模型的示例代码
2020/03/30 Python
Python 中的函数装饰器和闭包详解
2021/02/06 Python
描述一下JVM加载class文件的原理机制
2013/12/08 面试题
分公司经理岗位职责
2013/11/11 职场文书
秋季婚礼证婚词
2014/01/11 职场文书
女儿十岁生日答谢词
2014/01/27 职场文书
主管竞聘书范文
2014/03/31 职场文书
勤俭节约倡议书
2014/04/14 职场文书
公司委托书格式
2014/08/01 职场文书
党的群众路线教育实践活动个人对照检查材料(教师)
2014/11/04 职场文书
南极大冒险观后感
2015/06/05 职场文书
新店开张宣传语
2015/07/13 职场文书
物业公司管理制度
2015/08/05 职场文书