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

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

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

布局

<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

})

}

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

以上是 微信小程序实现图片上传、删除和预览功能的方法 的全部内容, 来源链接: utcz.com/z/319391.html

回到顶部