微信小程序实现图片上传放大预览删除代码


Posted in Javascript onJune 28, 2020

本文实例为大家分享了微信小程序图片上传放大预览的具体代码,供大家参考,具体内容如下

效果:

微信小程序实现图片上传放大预览删除代码

image.js代码:

Page({
 //选择相册或拍照
 data: {
 imgs: []
 },
//上传图片
 chooseImg: function (e) {
 var that = this;
 var imgs = this.data.imgs;
 if (imgs.length >= 9) {
  this.setData({
  lenMore: 1
  });
  setTimeout(function () {
  that.setData({
   lenMore: 0
  });
  }, 2500);
  return false;
 }
 wx.chooseImage({
  // count: 1, // 默认9
  sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
  sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
  success: function (res) {
  // 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片
  var tempFilePaths = res.tempFilePaths;
  var imgs = that.data.imgs;
  // console.log(tempFilePaths + '----');
  for (var i = 0; i < tempFilePaths.length; i++) {
   if (imgs.length >= 9) {
   that.setData({
    imgs: imgs
   });
   return false;
   } else {
   imgs.push(tempFilePaths[i]);
   }
  }
  // console.log(imgs);
  that.setData({
   imgs: imgs
  });
  }
 });
 },
 // 删除图片
 deleteImg: function (e) {
 var that = this;
 var imgs = that.data.imgs;
 var index = e.currentTarget.dataset.index;//获取当前长按图片下标
 wx.showModal({
  title: '提示',
  content: '确定要删除此图片吗?',
  success: function (res) {
  if (res.confirm) {
   console.log('点击确定了');
   imgs.splice(index, 1);
  } else if (res.cancel) {
   console.log('点击取消了');
   return false;
  }
  that.setData({
   imgs: imgs
  });
  }
 })
 },
 // 预览图片
 previewImg: function (e) {
  //获取当前图片的下标
  var index = e.currentTarget.dataset.index;
  //所有图片
  var imgs = this.data.imgs;
 
  wx.previewImage({
  //当前显示图片
  current: imgs[index],
  //所有图片
  urls: imgs
  })
 }
})

image.wxml代码:

<button class="upload-img-btn" bindtap="chooseImg">上传</button>
 <view class="img" wx:for="{{imgs}}" wx:for-item="item" wx:key="*this">
 <image src="{{item}}" data-index="{{index}}" mode="widthFix" bindtap="previewImg" bindlongpress="deleteImg"></image>
 </view>

保存到服务器上的代码未完待续。

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

Javascript 相关文章推荐
类之Prototype.js学习
Jun 13 Javascript
查看大图功能代码jquery版
Nov 05 Javascript
javascript实现节点(div)名称编辑
Dec 17 Javascript
jQuery将所有被选中的checkbox某个属性值连接成字符串的方法
Jan 24 Javascript
js实现继承的5种方式
Dec 01 Javascript
Jquery和Js获得元素标签名称的方法总结
Oct 08 Javascript
javascript中数组(Array)对象和字符串(String)对象的常用方法总结
Dec 15 Javascript
js判断iframe中元素是否存在的实现代码
Dec 24 Javascript
Angular的自定义指令以及实例
Dec 26 Javascript
基于vue的验证码组件的示例代码
Jan 22 Javascript
详解element-ui动态限定的日期范围选择器代码片段
Jul 03 Javascript
nuxt.js添加环境变量,区分项目打包环境操作
Nov 06 Javascript
vue实现底部菜单功能
Jul 24 #Javascript
vue 下列表侧滑操作实例代码详解
Jul 24 #Javascript
JavaScript类数组对象转换为数组对象的方法实例分析
Jul 24 #Javascript
微信小程序实现滴滴导航tab切换效果
Jul 24 #Javascript
JavaScript引用类型Array实例分析
Jul 24 #Javascript
详解微信小程序调起键盘性能优化
Jul 24 #Javascript
原生JavaScript实现remove()和recover()功能示例
Jul 24 #Javascript
You might like
世界上第一台立体声收音机
2021/03/01 无线电
PHP获取浏览器信息类和客户端地理位置的2个方法
2014/04/24 PHP
php获取远程文件的内容和大小
2015/11/03 PHP
ucenter中词语过滤原理分析
2016/07/13 PHP
php版微信自动获取收货地址api用法示例
2016/09/22 PHP
js+CSS 图片等比缩小并垂直居中实现代码
2008/12/01 Javascript
jquery+ajax+C#实现无刷新操作数据库数据的简单实例
2014/02/08 Javascript
jQuery判断元素上是否绑定了指定事件的方法
2015/03/17 Javascript
jquery实现图片左右切换的方法
2015/05/07 Javascript
javascript动态添加删除tabs标签的方法
2015/07/06 Javascript
基于javascript实现泡泡大冒险网页版小游戏
2016/03/23 Javascript
详解Angularjs在控制器(controller.js)中使用过滤器($filter)格式化日期/时间实例
2017/02/17 Javascript
vue2.0的contextmenu右键弹出菜单的实例代码
2017/07/24 Javascript
完美实现js拖拽效果 return false用法详解
2017/07/28 Javascript
JavaScript实现滚动加载更多
2020/12/27 Javascript
[02:54]DOTA2亚洲邀请赛 VG战队出场宣传片
2015/02/07 DOTA
[01:03:50]DOTA2-DPC中国联赛 正赛 CDEC vs DLG BO3 第二场 2月7日
2021/03/11 DOTA
python爬虫使用cookie登录详解
2017/12/27 Python
Python实现按中文排序的方法示例
2018/04/25 Python
python对html过滤处理的方法
2018/10/21 Python
python 不同方式读取文件速度不同的实例
2018/11/09 Python
Python selenium根据class定位页面元素的方法
2019/02/26 Python
Python正则表达式实现简易计算器功能示例
2019/05/07 Python
python3+PyQt5 自定义窗口部件--使用窗口部件样式表的方法
2019/06/26 Python
python的命名规则知识点总结
2019/10/04 Python
基于Python爬取fofa网页端数据过程解析
2020/07/13 Python
Javascript 高级手势使用介绍
2013/04/21 HTML / CSS
小米旗下精品生活电商平台:小米有品
2018/12/18 全球购物
JAVA软件工程师测试题
2014/07/25 面试题
护士自我鉴定范文
2013/10/06 职场文书
升职自荐书范文
2013/11/28 职场文书
2015年小学数学教师工作总结
2015/05/20 职场文书
2015年学校办公室主任工作总结
2015/07/20 职场文书
Nginx已编译的nginx-添加新模块
2021/04/01 Servers
golang 实现并发求和
2021/05/08 Golang
Python NumPy灰度图像的压缩原理讲解
2021/08/04 Python