老規矩,直接上程式碼了。
<span style="font-size: 14px;">handleCancelPic() { let id = this.data.dbId;<br/> wx.chooseImage({<br/> count: 3, // 默认9<br/> sizeType: ['compressed'], // 可以指定是原图还是压缩图,默认二者都有 sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有<br/> success: res => {<br/> // 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片<br/> var tempFilePaths = res.tempFilePaths;<br/><br/> this.setData({<br/> src: tempFilePaths<br/> })<br/> upload(this,tempFilePaths,'','');<br/> }<br/> })<br/> }<br/>然后一个封装好的方法function upload(page, path,way,id) {<br/> console.log(path)<br/> wx.showToast({<br/> icon: "loading",<br/> title: "正在上传"<br/> });<br/> var test = [],<br/> that = this; for (var i = 0; i<path.length; i++) {<br/> wx.uploadFile({<br/> url: api.CancelImg,<br/> filePath: path[i], <br/> name: 'file',<br/> header: { "Content-Type": "multipart/form-data" },<br/> success: res => {<br/> test.push(res);<br/> wx.setStorageSync('cancelImg',test)<br/> console.log(test) if (res.statusCode != 200) { <br/> wx.showModal({<br/> title: '提示',<br/> content: '上传失败',<br/> showCancel: false<br/> }) return;<br/> }else {<br/> wx.showModal({<br/> title: '提示',<br/> content: '上传成功',<br/> showCancel: false<br/> }) <br/> }<br/> },<br/> fail: function (e) {<br/> console.log(e);<br/> wx.showModal({<br/> title: '提示',<br/> content: '上传失败',<br/> showCancel: false<br/> })<br/> },<br/> complete: function () {<br/> wx.hideToast(); //隐藏Toast<br/> }<br/> })<br/> }<br/></span>
這個是多個圖片上傳的方法,單一圖片上傳的話,把循環去掉就好。主要是因為微信官方預設的就是一次上傳一張圖片這個很頭痛。只能這麼搞了。 。 。
相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!
推薦閱讀:
#以上是微信小程式開發中怎麼實作圖片上傳的詳細內容。更多資訊請關注PHP中文網其他相關文章!