微信小程序实现拍照和相册选取图片


Posted in Javascript onMay 09, 2021

本文实例为大家分享了微信小程序实现拍照和相册选取图片的具体代码,供大家参考,具体内容如下

布局:

<!--pages/camera/camera.wxml-->
<view 
class="tui-menu-list" 
id="view1" 
style="display:flex;flex-direction:space-between">
 <button 
  id="b1" 
  size="mini"
  type="primary" 
  bindtap="chooseimage">
  获取图片
 </button>
 <button 
  id="b2" 
  size="mini"
  type="primary"
  bindtap="savePhone">
  保存
 </button>
</view>
<image
  src="{{tempFilePaths}}" 
  catchtap="chooseImageTap"
  mode="aspectFit" 
  style="width:100%;height:400px;background-color:#ffffff;">
</image>

样式:

/* pages/camera/camera.wxss */
 
.view1 {
  height: 25px
}
 
.tui-menu-list {
  display: flex;
  flex-direction: row;
  margin: 20rpx;
  padding: 20rpx;
}

获取图片路径,显示图片和保存

// pages/camera/camera.js
Page({
 
  data: {
    tempFilePaths: 'http://pic2.cxtuku.com/00/01/08/b207004f7104.jpg'
  },
  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],
      count: 1,
      success: function (res) {
        console.log(res)
        that.setData({
          tempFilePaths: res.tempFilePaths[0],
        })
      }
    })
  },
  savePhone: function () {
    wx.getImageInfo({
      src: this.data.tempFilePaths,
      success: function (res) {
        var path = res.path
        wx.saveImageToPhotosAlbum({
          filePath: path,
          success: function () {
            wx.showToast({
              title: '保存成功',
            })
          },
          fail: function (res) {
            wx.showToast({
              title: '保存失败',
              icon: 'none'
            })
          }
        })
      }
    })
  }
})

效果图:

微信小程序实现拍照和相册选取图片

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript之函数直接量(function(){})()
Jun 29 Javascript
Javascript 继承机制的实现
Aug 12 Javascript
情人节专属 纯js脚本1k大小的3D玫瑰效果
Feb 11 Javascript
js获取select选中的option的text示例代码
Dec 19 Javascript
js 通过cookie实现刷新不变化树形菜单
Oct 30 Javascript
浅谈nodeName,nodeValue,nodeType,typeof 的区别
Jan 13 Javascript
JavaScript分秒倒计时器实现方法
Feb 02 Javascript
浅析bootstrap原理及优缺点
Mar 19 Javascript
微信小程序实现留言板(Storage)
Nov 02 Javascript
vue实现todolist基本功能以及数据存储功能实例详解
Apr 11 Javascript
JS实现的对象去重功能示例
Jun 04 Javascript
详解ES6新增字符串扩张方法includes()、startsWith()、endsWith()
May 12 Javascript
微信小程序实现录音Record功能
如何用JavaScipt测网速
May 09 #Javascript
浅谈JS的二进制家族
如何使用vue3打造一个物料库
Ajax常用封装库——Axios的使用
May 08 #Javascript
微信小程序用户授权最佳实践指南
vue完美实现el-table列宽自适应
You might like
PHP面向接口编程 耦合设计模式 简单范例
2011/03/23 PHP
smarty巧妙处理iframe中内容页的代码
2012/03/07 PHP
无刷新动态加载数据 滚动条加载适合评论等页面
2013/10/16 PHP
php判断邮箱地址是否存在的方法
2016/02/13 PHP
JavaScript实现删除电脑的关机键
2016/07/26 PHP
PHP使用ActiveMQ实例
2018/02/05 PHP
php数组和链表的区别总结
2019/09/20 PHP
JavaScript使用技巧精萃[代码非常实用]
2008/11/21 Javascript
Javascript 验证上传图片大小[客户端]
2009/08/01 Javascript
最佳的addEvent事件绑定是怎样诞生的
2011/10/24 Javascript
jQuery中的val()示例应用
2014/02/26 Javascript
JavaScript中自定义事件用法分析
2014/12/23 Javascript
详谈LABJS按需动态加载js文件
2015/05/07 Javascript
jQuery position() 函数详解以及jQuery中position函数的应用
2015/12/14 Javascript
基于jquery实现三级下拉菜单
2016/05/10 Javascript
Javascript实现图片不间断滚动的代码
2016/06/22 Javascript
简单理解vue中实例属性vm.$els
2016/12/01 Javascript
微信小程序 仿美团分类菜单 swiper分类菜单
2017/04/12 Javascript
Vue实现一个返回顶部backToTop组件
2017/07/25 Javascript
es6学习之解构时应该注意的点
2017/08/29 Javascript
vue中vee validate表单校验的几种基本使用
2018/06/25 Javascript
高性能js数组去重(12种方法,史上最全)
2019/12/21 Javascript
在vue中使用Echarts利用watch做动态数据渲染操作
2020/07/20 Javascript
[10:18]2018DOTA2国际邀请赛寻真——Fnatic能否笑到最后?
2018/08/14 DOTA
Python使用Selenium模块实现模拟浏览器抓取淘宝商品美食信息功能示例
2018/07/18 Python
理想高通滤波实现Python opencv示例
2019/01/30 Python
使用Python paramiko模块利用多线程实现ssh并发执行操作
2019/12/05 Python
python飞机大战pygame碰撞检测实现方法分析
2019/12/17 Python
Python 实现使用空值进行赋值 None
2020/03/12 Python
Python批量处理csv并保存过程解析
2020/05/16 Python
联想台湾官网:Lenovo TW
2018/05/09 全球购物
上班打牌检讨书
2014/02/07 职场文书
如何理解Vue简单状态管理之store模式
2021/05/15 Vue.js
详解MySQL中的pid与socket
2021/06/15 MySQL
Golang Elasticsearches 批量修改查询及发送MQ
2022/04/19 Golang
苹果macOS 13开发者预览版Beta 8发布 正式版10月发布
2022/09/23 数码科技