微信小程序开发之相册选择和拍照详解及实例代码


Posted in Javascript onFebruary 22, 2017

微信小程序 拍照和相机选择详解

前言:

小程序中获取图片可通过两种方式得到,第一种是直接打开微信内部自己的样式,第一格就是相机拍照,后面是图片,第二种是弹框提示用户是要拍照还是从相册选择,下面一一来看。

选择相册要用到wx.chooseImage(OBJECT)函数,具体参数如下:

微信小程序开发之相册选择和拍照详解及实例代码

直接来看打开相机相册的代码:

Page({
 data: {
  tempFilePaths: ''
 },
 onLoad: function () {
 },
 chooseimage: function () {
  var that = this;
  wx.chooseImage({
   count: 1, // 默认9 
   sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有 
   sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有 
   success: function (res) {
    // 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片 
    that.setData({
     tempFilePaths: res.tempFilePaths
    })
   }
  })

 },




})

方法一效果图如下:

微信小程序开发之相册选择和拍照详解及实例代码

个人认为第二种用户体验要好一点,效果如下:

微信小程序开发之相册选择和拍照详解及实例代码

点击获取弹框提示,代码如下:

Page({
 data: {
  tempFilePaths: ''
 },
 onLoad: function () {
 },
 chooseimage: function () {
  var that = this;
  wx.showActionSheet({
   itemList: ['从相册中选择', '拍照'],
   itemColor: "#CED63A",
   success: function (res) {
    if (!res.cancel) {
     if (res.tapIndex == 0) {
      that.chooseWxImage('album')
     } else if (res.tapIndex == 1) {
      that.chooseWxImage('camera')
     }
    }
   }
  })

 },

 chooseWxImage: function (type) {
  var that = this;
  wx.chooseImage({
   sizeType: ['original', 'compressed'],
   sourceType: [type],
   success: function (res) {
    console.log(res);
    that.setData({
     tempFilePaths: res.tempFilePaths[0],
    })
   }
  })
 }


})

文件的临时路径,在小程序本次启动期间可以正常使用,如需持久保存,需在主动调用 wx.saveFile,在小程序下次启动时才能访问得到。

布局文件:

<button style="margin:30rpx;" bindtap="chooseimage">获取图片</button>
<image src="{{tempFilePaths }}" catchTap="chooseImageTap" mode="aspectFit" style="width: 100%; height: 450rpx" />

官方文档:https://mp.weixin.qq.com/debug/wxadoc/dev/api/media-picture.html

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

Javascript 相关文章推荐
js技巧--转义符&quot;\&quot;的妙用
Jan 09 Javascript
网页打开自动最大化的js代码
Aug 22 Javascript
javascript回车完美实现tab切换功能
Mar 13 Javascript
使用node.js 制作网站前台后台
Nov 13 Javascript
JavaScript数组随机排列实现随机洗牌功能
Mar 19 Javascript
JS实现左右无缝轮播图代码
May 01 Javascript
一个简单不报错的summernote 图片上传案例
Jul 11 Javascript
微信小程序 后台https域名绑定和免费的https证书申请详解
Nov 10 Javascript
vue-cli脚手架build目录下utils.js工具配置文件详解
Sep 14 Javascript
微信小程序使用map组件实现路线规划功能示例
Jan 22 Javascript
vue中实现上传文件给后台实例详解
Aug 22 Javascript
微信小程序实现音频文件播放进度的实例代码
Mar 02 Javascript
js仿微博动态栏功能
Feb 22 #Javascript
Vue.js:使用Vue-Router 2实现路由功能介绍
Feb 22 #Javascript
svg动画之动态描边效果
Feb 22 #Javascript
jQuery实现的简单拖动层示例
Feb 22 #Javascript
Bootstrap 3 进度条的实现
Feb 22 #Javascript
easy ui datagrid 从编辑框中获取值的方法
Feb 22 #Javascript
canvas 绘制圆形时钟
Feb 22 #Javascript
You might like
php与mysql建立连接并执行SQL语句的代码
2011/07/04 PHP
你可能不知道PHP get_meta_tags()函数
2014/05/12 PHP
利用PHPExcel读取Excel的数据和导出数据到Excel
2017/05/12 PHP
js跟随滚动条滚动浮动代码
2009/12/31 Javascript
在JavaScript中处理时间之setMinutes()方法的使用
2015/06/11 Javascript
两种JS实现屏蔽鼠标右键的方法
2020/08/20 Javascript
jQuery ajax时间差导致的变量赋值问题分析
2016/01/22 Javascript
第五篇Bootstrap 排版
2016/06/21 Javascript
使用jQuery调用XML实现无刷新即时聊天
2016/08/07 Javascript
jQuery实现鼠标选中文字后弹出提示窗口效果【附demo源码】
2016/09/05 Javascript
nuxt.js 缓存实践
2018/06/25 Javascript
Angular5集成eventbus的示例代码
2018/07/19 Javascript
详解Vue iview IE浏览器不兼容报错(Iview Bable polyfill)
2019/01/07 Javascript
mpvue网易云短信接口实现小程序短信登录的示例代码
2020/04/03 Javascript
[05:43]VG.R战队教练Mikasa专访:为目标从未停止战斗
2016/08/02 DOTA
在Python中利用Pandas库处理大数据的简单介绍
2015/04/07 Python
python使用WMI检测windows系统信息、硬盘信息、网卡信息的方法
2015/05/15 Python
python使用PIL模块获取图片像素点的方法
2019/01/08 Python
解决Pycharm调用Turtle时 窗口一闪而过的问题
2019/02/16 Python
Python zip函数打包元素实例解析
2019/12/11 Python
tensorflow将图片保存为tfrecord和tfrecord的读取方式
2020/02/17 Python
python使用paramiko实现ssh的功能详解
2020/03/06 Python
Java爬虫技术框架之Heritrix框架详解
2020/07/22 Python
推荐值得学习的12款python-web开发框架
2020/08/10 Python
德国大型箱包和皮具商店:Koffer
2019/10/01 全球购物
杭州SQL浙江浙大网新恩普软件有限公司
2013/07/27 面试题
美德好少年主要事迹
2014/01/29 职场文书
企业文化理念标语
2014/06/10 职场文书
教师党的群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
2014年质检工作总结
2014/11/26 职场文书
毕业实习证明范本
2015/06/16 职场文书
六一活动主持词
2015/06/30 职场文书
孩子满月酒答谢词
2015/09/30 职场文书
mysql如何能有效防止删库跑路
2021/10/05 MySQL
Python中生成随机数据安全性、多功能性、用途和速度方面进行比较
2022/04/14 Python
代码复现python目标检测yolo3详解预测
2022/05/06 Python