本文介绍了如何在微信小程序开发中使用腾讯官方提供的云开发功能快速实现图片的上传与存储,以及介绍云开发的 5G 存储空间的基本使用方法,这将大大提升微信小程序的开发效率小程序
对于通常的图片上传功能开发,咱们通常须要实现以下几个技术点:微信小程序
而当咱们使用腾讯提供的云开发功能时,只须要几行代码便可在微信小程序里实现完整的图片上传逻辑,很是地方便、高效。服务器
使用腾讯云开发实现图片上传的主要业务逻辑以下:微信
wx.chooseImage
方法让用户选择设备中的图片资源;wx.cloud.uploadFile
方法实现图片的上传,上传至腾讯提供的免费 5G 空间中;wx.cloud.uploadFile
的回调事件处理云端返回的图片资源 ID、连接等相关属性,进行后续地处理。下面咱们直接看这三个业务逻辑的代码部分。app
/* 图片的选择与上传部分逻辑 */ // 上传图片 doUpload: function () { // 选择图片 wx.chooseImage({ count: 1, sizeType: ['compressed'], sourceType: ['album', 'camera'], success: function (res) { wx.showLoading({ title: '上传中', }) const filePath = res.tempFilePaths[0] // 上传图片 // 这部分能够自行处理图片的命名方式,这里图片进行了固定命名为 my-image const cloudPath = 'my-image' + filePath.match(/\.[^.]+?$/)[0] wx.cloud.uploadFile({ cloudPath, filePath, success: res => { console.log('[上传文件] 成功:', res) app.globalData.fileID = res.fileID app.globalData.cloudPath = cloudPath app.globalData.imagePath = filePath // 上传成功后,页面进行跳转,在详情页加载图片显示等操做 wx.navigateTo({ url: '../storageConsole/storageConsole' }) }, fail: e => { console.error('[上传文件] 失败:', e) wx.showToast({ icon: 'none', title: '上传失败', }) }, complete: () => { wx.hideLoading() } }) }, fail: e => { console.error(e) } }) },
这部分比较简单,直接在页面读取加载到的图片连接便可
onLoad: function (options) { const { fileID, cloudPath, imagePath, } = app.globalData this.setData({ fileID, cloudPath, imagePath, }) },
后记:图片在云开发管理器中的管理与查看,能够看到图片已成功上传。ide