相思资源网 Design By www.200059.com
这次做了vue页面的图片上传功能,不带裁剪功能的!
首先是html代码,在input框上添加change事件,如下:
<ul class="clearfix"> <li v-if="imgs.length>0" v-for='(item ,index ) in imgs'> <img :src="/UploadFiles/2021-04-02/item">我这里做了图片数量的限制,最多6张。
然后是data数据,如下:
data () { return { imgs: [], imgData: { accept: 'image/gif, image/jpeg, image/png, image/jpg', } } }imgs数组是放图片路径的,页面显示图片就是循环这个数组,imgData是判断图片类型的。
接下来是最重要的methods里面的方法,具体如下:
add_img(event){ let reader =new FileReader(); let img1=event.target.files[0]; let type=img1.type;//文件的类型,判断是否是图片 let size=img1.size;//文件的大小,判断图片的大小 if(this.imgData.accept.indexOf(type) == -1){ alert('请选择我们支持的图片格式!'); return false; } if(size>3145728){ alert('请选择3M以内的图片!'); return false; } var uri = '' let form = new FormData(); form.append('file',img1,img1.name); this.$http.post('/file/upload',form,{ headers:{'Content-Type':'multipart/form-data'} }).then(response => { console.log(response.data) uri = response.data.url reader.readAsDataURL(img1); var that=this; reader.onloadend=function(){ that.imgs.push(uri); } }).catch(error => { alert('上传图片出错!'); }) },首先是获取你选择的图片,判断图片的类型和大小,然后以form表单的形式提交到后台,后台会返回给你这个图片的线上路径,你把后台返回的图片路径push到图片数组里面就可以了。
一般情况下还有删除图片的方法,就是把图片数组里的那个路径删除掉,把数据提交到后台,告诉后台删除了哪张图片就可以了。
以上所述是小编给大家介绍的vue 图片上传功能详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
相思资源网 Design By www.200059.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
相思资源网 Design By www.200059.com
暂无详解vue 图片上传功能的评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。