老规矩,直接上代码了。
<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>
登录后复制
这个是多个图片上传的方法,单个图片上传的话,把循环去掉就好。主要是因为微信官方默认的就是一次上传一张图片这个很蛋疼。只能这么搞了。。。
相信看了本文案例你已经掌握了方法,更多精彩请关注有卡有网。