小程序的圖片上傳功能,官網已給出了比較詳細的API(image)
這里說下將上傳后的圖片提交給服務器,但是微信的上傳圖片功能不支持批量上傳,所以目前只能通過for循環進行上傳到服務器
uni.showLoading({ title: '正在上傳', }) this.imgPaths.forEach((item,index) => { uni.uploadFile({ url:api.busines.uploadImg, // 后台服務URL filePath: item, // 微信返回的臨時圖片地址 name: 'files', header:{ "Content-Type": "multipart/form-data" }, formData:{// 其他參數 siteId: that.siteId }, success: (res) => { let result = JSON.parse(res.data) if (index === (this.imgPaths.length - 1)) {// 判斷是否為最后一個圖片 if (result.code === enums.code.REQUEST_SUCCESS) { uni.showModal({ title:"溫馨提示", content:"上傳成功", showCancel: false, success:function(res){ let pages = getCurrentPages() // #ifdef MP-WEIXIN let previousPage = pages[pages.length - 2].$vm //上一個頁面 // #endif // #ifdef H5 let previousPage = pages[pages.length - 2] //上一個頁面 // #endif previousPage.setData({ isShowImg: false }) uni.navigateBack({ delta: 1 }); } }) } else {// 錯誤提示 uni.showModal({ title:"溫馨提示", content:result.message, showCancel: false, success:function(res){} }) uni.showToast({ title: result.message, icon: "none", duration: 3000 }) } uni.hideLoading(); } }) })
這樣就可以將上傳的圖片通過文件流傳給后台服務器