下面我就為大家分享一篇淺談用Webpack路徑壓縮圖片上傳尺寸獲取的問題,具有很好的參考價值,希望對大家有所幫助。
問題的起因是因為的我的圖片大小大於url-loader 的尺寸標準,導致webpack自動將圖片的路徑做了壓縮處理,直接導致了我在獲取dom的value的時候無法正確的取得到圖片的正確路徑。
直接上解決的方法。
picUpload(e) { let image = new Image(); const reader = new FileReader(); const $img = e.target.files[0]; const formData = new FormData(); formData.append('pic', $img); reader.onload = (e) => { const src = e.target.result; image.src = src; if (image.width !== 750 && image.height !== 1334) { this.showModal('', '图片尺寸有误,请重新上传', 'warning', true, false); } else { if ($img.size > (300 * 1024)) { this.showModal('', '图片大小不能超过300k', 'warning', true, false); this.setParams('pic', ''); } else { this.$set(this, 'IMGNAME', $img.name); this.setParams('pic', formData); } } } if (e.target.files && e.target.files[0]) { reader.readAsDataURL(e.target.files[0]); } },
這邊給image 的src所賦值是用base64編碼之後的圖片路徑。所以要透過readAsDataURL來取出關於路徑base64編碼之後的結果。算是個小小的坑。這裡做一個筆記方便日觀看。
上面是我整理給大家的,希望今後對大家有幫助。
相關文章:
#以上是在Webpack中路徑壓縮圖片上傳尺寸取得的問題(詳細教學)的詳細內容。更多資訊請關注PHP中文網其他相關文章!