vue实现移动端图片上传功能

  

本文实例为大家分享了vue实现移动端图片上传的具体代码,供大家参考,具体内容如下

  

 vue实现移动端图片上传功能

        & lt; template>   & lt; div类="盒子"比;   & lt; div类=皍pDiv”比;   {{labTex}}//标题//上传按钮   & lt;输入ref=" uploadInput "   type="文件"   类=' upinp '   name="文件"   值=" "   接受="图像/gif图像/jpeg图像/jpg图像/png”   @change=" selectImg(事件)”/比;   & lt;/div>//显示上传图片的区域   & lt; div: class=" operationShow& # 63;“operation-div”: operation-div隐藏”比;   & lt; img类=皊hoImg”: src=" https://www.yisu.com/zixun/imgDefault "比;   & lt;/div>   & lt;/div>   & lt;/template>   & lt; script>   出口默认{   道具:{   价值:{   类型:字符串,   默认值:“   },   labTex: {   类型:字符串,   默认值:“   },   imgDefault: {   类型:字符串,   默认值:“   }   },   数据(){   返回{   dataUrl:”,   defaultImg:“   }   },   安装(){   console.log (this.value)   console.log (this.labTex)   },//输入的改变回调第一个参数是事件对象   方法:{   selectImg (e) {   const imgFile=e.target.files [0];   如果(imgFile)   {   this.operationShow=true   如果(this.checkFile (imgFile)) {   this.upload (imgFile);   }   }      },   checkFile(文件){//文件为空判断   如果(文件===null | |文件===定义){   alert("请选择您要上传的文件!”);   返回错误;   其他}{   返回true;   }   让=Math.floor(文件大小。尺寸/1024);//这个条件还得改   如果(大小!=0){   返回true;   其他}{   返回假   }   },   上传(文件){   尝试{   让自我=;   var="结果;//执行上传操作   var xhr=new XMLHttpRequest ();   xhr。打开(“文章”,ApiUrl +“/会员/图像/上传”,真的);   xhr。onreadystatechange=function () {   如果(xhr。readyState==4) {   如果(xhr。状态==200){   让returnData=https://www.yisu.com/zixun/$ .parseJSON (xhr.responseText);   如果(! returnData)抛出新的错误(“上传失败服务器”);   如果(! returnData.code)抛出新的错误(“上传失败服务器”)   如果(returnData。代码==200){   alert("上传成功”)//显示图片地址   自我。美元发出(change-img, returnData.name);   self.defaultImg=returnData.url;   其他}{   alert("上传失败服务器”)   }   console.log (" + returnDate)   其他}{   alert("上传失败”)   }   };   };   var牌=getMemberToken ();//表单数据   var fd=new FormData ();   fd。追加(“令牌”,令牌);   fd。追加(“文件”,文件);//执行发送   结果=xhr.send (fd);   }捕捉(e) {   console.log (e);   警报(e);   }   }   }   }   & lt;/script>   & lt; style>   .box {   高度:11眼动;   margin-top: 0.5快速眼动;   }   .upDiv {   位置:相对;   高度:1.2快速眼动;   宽度:100%;   margin-bottom: 0.08快速眼动;   宽度:5.5快速眼动;   text-align:中心;   z - index: 10;   字体大小:0.6快速眼动;   填充:0 0.2快速眼动;   border - radius: 0.2快速眼动;   border - radius: 0.4快速眼动;   颜色:# fff;   边界:没有;   高度:1.2快速眼动;   行高:1.2快速眼动;   显示:inline-block;   背景:# 0097 ffd9;   }   .operation-div {   宽度:15眼动;   高度:9.2快速眼动;   }   .operation-div img {   宽度:100%;   高度:100%;   }   .upDiv .upinp {   位置:绝对的;   左:0 px;   右:0 px;   右:0 px;   底部:0 px;   z - index: 1;   透明度:0;   }   .shoImg {   宽度:15眼动;   border - radius: 0.05快速眼动   }   & lt;/style>      

在页面当中的使用:

        & lt; upload-img   :lab-tex=吧洗锌ㄕ妗薄?   :img-default=" imgFourDefault”   v: change-img=" chooseFourImg "   祝辞& lt;/upload-img>      

关于vue.js组件的教程,请大家点击专题vue.js组件学习教程进行学习。

  

更多vue学习教程请阅读专题《vue实战教程》

  

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

vue实现移动端图片上传功能