微信小程序选择图片控件


Posted in Javascript onJanuary 19, 2021

本文实例为大家分享了微信小程序选择图片控件的具体代码,供大家参考,具体内容如下

微信小程序选择图片控件

xml:

<loading hidden="{{loadingHidden}}">
 加载中...
</loading>
<view class="add_carimg">
 <block>
 <view class="load_iamge">
 <text class="load_head_text">上传施工车辆照片</text>
 <text class="load_foot_text">{{imgbox.length}}/2</text>
 </view>
 <view class='pages'>
 <view class="images_box">
 <block wx:key="imgbox" wx:for="{{imgbox}}">
  <view class='img-box'>
  <image class='img' src='{{item}}' data-message="{{item}}" bindtap="imgYu"></image>
  <view class='img-delect' data-deindex='{{index}}' bindtap='imgDelete1'>
  <image class='img' src='/pages/images/delete_btn.png'></image>
  </view>
  </view>
 </block>
 <view class='img-box' bindtap='addPic1' wx:if="{{imgbox.length<2}}">
  <image class='img' src='/pages/images/load_image.png'></image>
 </view>
 </view>
 </view>
 </block>
</view>
<view>
 <button class="work_btn" bindtap="shanggang">上岗</button>
</view>

css: 

.work_btn {
 width: 60%;
 height: 35px;
 line-height: 35px;
 margin-top: 15px;
 border-radius: 5px;
 font-size: 30rpx;
 color: white;
 background-color: rgb(2, 218, 247);
}
 
.work_btn:active {
 width: 60%;
 height: 35px;
 line-height: 35px;
 margin-top: 15px;
 border-radius: 5px;
 font-size: 30rpx;
 color: white;
 background-color: rgb(151, 222, 231);
}
 
/*********/
 
.load_iamge {
 width: 100%;
 height: 30px;
 margin-top: 10px;
 display: flex;
 flex-direction: row;
}
 
.load_head_text {
 width: 95%;
 height: 20px;
 margin-bottom: 5px;
 margin-top: 5px;
 
 
}
 
.load_foot_text {
 width: 5%;
 height: 20px;
 margin-right: 15px;
 margin-top: 5px;
 margin-bottom: 5px;
 float: right;
 
}
 
.pages {
 width: 98%;
 margin: auto;
 overflow: hidden;
}
 
/* 图片 */
.images_box {
 width: 100%;
 display: flex;
 flex-direction: row;
 flex-wrap: wrap;
 justify-content: flex-start;
 background-color: white;
}
 
.img-box {
 border: 2rpx;
 border-style: solid;
 border-color: rgba(170, 167, 167, 0.452);
 width: 200rpx;
 height: 200rpx;
 margin-left: 35rpx;
 margin-top: 20rpx;
 margin-bottom: 20rpx;
 position: relative;
}
 
/* 删除图片 */
.img-delect {
 width: 50rpx;
 height: 50rpx;
 border-radius: 50%;
 position: absolute;
 right: -20rpx;
 top: -20rpx;
}
 
.img {
 width: 100%;
 height: 100%;
}

js:

Page({
 
 /**
 * 页面的初始数据
 */
 data: {
 tempFilePaths: '',
 imgbox: [], //选择图片
 fileIDs: [], //上传云存储后的返回值
 src: 0,
 },
 
 onLoad: function (options) {
 
 
 },
 //图片点击事件
 imgYu: function (event) {
 var that = this;
 
 console.log(event.target.dataset.message + "这是啥");
 var src = event.target.dataset.message;
 //图片预览
 wx.previewImage({
 current: src, // 当前显示图片的http链接
 urls: [src] // 需要预览的图片http链接列表
 })
 }, // 删除照片 &&
 imgDelete1: function (e) {
 let that = this;
 let index = e.currentTarget.dataset.deindex;
 let imgbox = this.data.imgbox;
 imgbox.splice(index, 1)
 that.setData({
 imgbox: imgbox
 });
 },
 // 删除照片 &&
 imgDelete1: function (e) {
 let that = this;
 let index = e.currentTarget.dataset.deindex;
 let imgbox = this.data.imgbox;
 imgbox.splice(index, 1)
 that.setData({
 imgbox: imgbox
 });
 },
 // 选择图片 &&&
 addPic1: function (e) {
 var imgbox = this.data.imgbox;
 console.log(imgbox)
 var that = this;
 var n = 2;
 if (2 > imgbox.length > 0) {
 n = 2 - imgbox.length;
 } else if (imgbox.length == 2) {
 n = 1;
 }
 wx.chooseImage({
 count: n, // 默认9,设置图片张数
 sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
 sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
 success: function (res) {
  // console.log(res.tempFilePaths)
  // 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片
  var tempFilePaths = res.tempFilePaths
  console.log('路径' + tempFilePaths);
  if (imgbox.length == 0) {
  imgbox = tempFilePaths
  } else if (2 > imgbox.length) {
  imgbox = imgbox.concat(tempFilePaths);
  }
  that.setData({
  imgbox: imgbox,
  imgnum: imgbox.length
  });
 }
 })
 },
 
 //图片
 imgbox: function (e) {
 this.setData({
 imgbox: e.detail.value
 })
 },
 
})

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

Javascript 相关文章推荐
jquery validator 插件增加日期比较方法
Feb 21 Javascript
文字溢出实现溢出的部分再放入一个新生成的div中具体代码
May 17 Javascript
ie8 不支持new Date(2012-11-10)问题的解决方法
Jul 31 Javascript
自动完成的搜索框javascript实现
Feb 26 Javascript
深入浅析javascript继承体系
Oct 23 Javascript
Vue DevTools调试工具的使用
Dec 05 Javascript
vue动态绘制四分之三圆环图效果
Sep 03 Javascript
layer提示框添加多个按钮选择的实例
Sep 12 Javascript
详解小程序云开发攻略(解决最棘手的问题)
Sep 30 Javascript
微信小程序webSocket的使用方法
Feb 20 Javascript
vue引入静态js文件的方法
Jun 20 Javascript
在vue中通过render函数给子组件设置ref操作
Nov 17 Vue.js
jQuery冲突问题解决方法
Jan 19 #jQuery
js实现随机点名
Jan 19 #Javascript
js实现有趣的倒计时效果
Jan 19 #Javascript
微信小程序之高德地图多点路线规划过程示例详解
Jan 18 #Javascript
从源码角度来回答keep-alive组件的缓存原理
Jan 18 #Javascript
在JavaScript中查找字符串中最长单词的三种方法(推荐)
Jan 18 #Javascript
vue-resource 拦截器interceptors使用详解
Jan 18 #Vue.js
You might like
模拟OICQ的实现思路和核心程序(二)
2006/10/09 PHP
PHP与SQL注入攻击[三]
2007/04/17 PHP
深入HTTP响应状态码速查表的详解
2013/06/07 PHP
深入file_get_contents函数抓取内容失败的原因分析
2013/06/25 PHP
thinkPHP5框架导出Excel文件简单操作示例
2018/08/03 PHP
php设计模式之建造器模式分析【星际争霸游戏案例】
2020/01/23 PHP
JavaScript 学习笔记(十二) dom
2010/01/21 Javascript
基于jquery创建的一个图片、视频缓冲的效果样式插件
2012/08/28 Javascript
一个简单的Node.js异步操作管理器分享
2014/04/29 Javascript
js实现超简单的展开、折叠目录代码
2015/08/28 Javascript
12种JavaScript常用的MVC框架比较分析
2015/11/16 Javascript
打造自己的jQuery插件入门教程
2016/09/23 Javascript
jstree创建无限分级树的方法【基于ajax动态创建子节点】
2016/10/25 Javascript
javascript读取文本节点方法小结
2016/12/15 Javascript
js模仿微信朋友圈计算时间显示几天/几小时/几分钟/几秒之前
2017/04/27 Javascript
微信小程序图片横向左右滑动案例
2017/05/19 Javascript
对vux点击事件的优化详解
2018/08/28 Javascript
Vue + Element UI图片上传控件使用详解
2019/08/20 Javascript
vue不操作dom实现图片轮播的示例代码
2019/12/18 Javascript
Kettle中使用JavaScrip调用jar包对文件内容进行MD5加密的操作方法
2020/09/04 Javascript
跟老齐学Python之字典,你还记得吗?
2014/09/20 Python
Python中处理字符串之islower()方法的使用简介
2015/05/19 Python
tensorflow 保存模型和取出中间权重例子
2020/01/24 Python
Python正则表达式如何匹配中文
2020/05/27 Python
HTML5本地存储之Database Storage应用介绍
2013/01/06 HTML / CSS
北美三大旅游网站之一:Travelocity加拿大
2016/08/20 全球购物
印度在线购买电子产品网站:Croma
2020/01/02 全球购物
公司领导推荐信
2013/11/12 职场文书
企业授权委托书范本
2014/09/22 职场文书
2014政府领导班子对照检查材料思想汇报(3篇)
2014/09/26 职场文书
小学重阳节活动总结
2015/03/24 职场文书
实习指导老师意见
2015/06/04 职场文书
Python insert() / append() 用法 Leetcode实战演示
2021/03/31 Python
为Java项目添加Redis缓存的方法
2021/05/18 Redis
oracle连接ODBC sqlserver数据源的详细步骤
2021/07/25 Oracle
Java 关于String字符串原理上的问题
2022/04/07 Java/Android