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


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 相关文章推荐
30个最好的jQuery 灯箱插件分享
Apr 25 Javascript
js用拖动滑块来控制图片大小的方法
Feb 27 Javascript
最精简的JavaScript实现鼠标拖动效果的方法
May 11 Javascript
JS实现的3D拖拽翻页效果代码
Oct 31 Javascript
JS实现超精简的链接列表在固定区域内滚动效果代码
Nov 04 Javascript
jQuery实现鼠标双击Table单元格变成文本框及输入内容后更新到数据库的方法
Nov 25 Javascript
JS实现合并两个数组并去除重复项只留一个的方法
Dec 17 Javascript
jQuery toggle 代替方法
Mar 22 Javascript
Sublime Text新建.vue模板并高亮(图文教程)
Oct 26 Javascript
Node.js使用Angular简单示例
May 11 Javascript
vue.js路由mode配置之去掉url上默认的#方法
Nov 01 Javascript
js实现有趣的倒计时效果
Jan 19 Javascript
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实现的css文件背景图片下载器代码
2014/11/11 PHP
Yii2中Restful API原理实例分析
2016/07/25 PHP
Windows 下安装 swoole 图文教程(php)
2017/06/05 PHP
基于JQuery的一个简单的鼠标跟随提示效果
2010/09/23 Javascript
使用Jquery实现点击文字后变成文本框且可修改
2013/09/21 Javascript
Jquery实现的tab效果可以指定默认显示第几页
2013/10/16 Javascript
javascript获取所有同类checkbox选项(实例代码)
2013/11/07 Javascript
JS Loading功能的简单实现
2013/11/29 Javascript
jQuery移除元素自动解绑事件实现思路及代码
2014/05/31 Javascript
javascript获取当前鼠标坐标的方法
2015/01/10 Javascript
js禁止页面刷新与后退的方法
2015/06/08 Javascript
Bootstrap下拉菜单效果实例代码分享
2016/06/30 Javascript
如何实现json数据可视化详解
2016/11/24 Javascript
不得不看之JavaScript构造函数及new运算符
2017/08/21 Javascript
JavaScript实现简单生成随机颜色的方法
2017/09/21 Javascript
jQuery EasyUI window窗口使用实例代码
2017/12/25 jQuery
基于elementUI实现图片预览组件的示例代码
2019/03/31 Javascript
详解如何实现Element树形控件Tree在懒加载模式下的动态更新
2019/04/25 Javascript
微信小程序实现一张或多张图片上传(云开发)
2019/09/25 Javascript
vue实现学生信息管理系统
2020/05/30 Javascript
python实现的简单猜数字游戏
2015/04/04 Python
Python爬虫爬验证码实现功能详解
2016/04/14 Python
深入浅析python继承问题
2016/05/29 Python
关于pip的安装,更新,卸载模块以及使用方法(详解)
2017/05/19 Python
python和ruby,我选谁?
2017/09/13 Python
python验证码识别实例代码
2018/02/03 Python
小程序瀑布流解决左右两边高度差距过大的问题
2019/02/20 HTML / CSS
雅诗兰黛香港官网:Estee Lauder香港
2017/09/26 全球购物
20世纪40年代连衣裙和复古服装:The Seamstress Of Bloomsbury
2018/07/24 全球购物
快时尚眼镜品牌,全国连锁眼镜店:LOHO眼镜生活
2018/10/08 全球购物
应届生文秘专业个人自荐信格式
2013/09/21 职场文书
普通员工辞职信
2014/01/17 职场文书
化学专业毕业生求职信
2014/07/28 职场文书
党员领导干部民主生活会批评与自我批评发言
2014/09/28 职场文书
离婚协议书范文2014(夫妻感情破裂)
2014/12/14 职场文书
python中sys模块的介绍与实例
2021/04/17 Python