网络编程
位置:首页>> 网络编程>> JavaScript>> 微信小程序实现图片上传、删除和预览功能的方法

微信小程序实现图片上传、删除和预览功能的方法

作者:anLazyAnt  发布时间:2023-09-20 08:54:30 

标签:微信小程序,图片

本文实例讲述了微信小程序实现图片上传、删除和预览功能的方法。分享给大家供大家参考,具体如下:

这里主要介绍一下微信小程序的图片上传图片删除和图片预览

布局


<view class="img-v">
<view class="img" wx:for="{{imgs}}" wx:for-item="item" wx:key="*this">
 <image src="{{item}}" data-index="{{index}}" mode="aspectFill" bindtap="previewImg"></image>
 <view class="delete-btn" data-index="{{index}}" catchtap="deleteImg"></view>
</view>
<view class="upload-img-btn" bindtap="chooseImg"></view>
</view>

JS处理


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 imgs = this.data.imgs;
 var index = e.currentTarget.dataset.index;
 imgs.splice(index, 1);
 this.setData({
  imgs: imgs
 });
},
// 预览图片
previewImg: function (e) {
  //获取当前图片的下标
 var index = e.currentTarget.dataset.index;
  //所有图片
 var imgs = this.data.imgs;
 wx.previewImage({
  //当前显示图片
  current: imgs[index],
  //所有图片
  urls: imgs
 })
}

希望本文所述对大家微信小程序开发有所帮助。

来源:http://blog.csdn.net/anlazyant/article/details/77374905

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com