小程序的圖片上傳功能,官網已給出了比較詳細的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();
}
})
})
這樣就可以將上傳的圖片通過文件流傳給后台服務器
