时间:2021-07-01 10:21:17 帮助过:29人阅读
问题的起因是因为的我的图片大小大于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编码之后的结果。算是一个小小的坑。这里做一个笔记方便日观看。
上面是我整理给大家的,希望今后会对大家有帮助。
相关文章:
有关在Vue中使用Compass的具体方法?
利用vue2.0中swiper组件实现轮播(详细教程)
js实现操作二进制数据方法
以上就是在Webpack中路径压缩图片上传尺寸获取的问题(详细教程)的详细内容,更多请关注Gxl网其它相关文章!