vue+element-ui+axios如何实现图片上传

这篇文章主要介绍了vue+element-ui+axios如何实现图片上传,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

成都创新互联公司专注于蒲江县网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供蒲江县营销型网站建设,蒲江县网站制作、蒲江县网页设计、蒲江县网站官网定制、微信小程序开发服务,打造蒲江县网络公司原创品牌,更为您提供蒲江县网站排名全网营销落地服务。

本文实例为大家分享了vue+element-ui+axios实现图片上传的具体代码,供大家参考,具体内容如下






Examples












 
  
   选择图片
  
 
   new Vue({   el: '#app',   data: {    posterUrl: '',    imgUrls: [],    imgWidth: '320',    imgHeight: '400',   },   methods: {    beforeUpload(file) {     let _this = this;     let _checkSize = false; //是否需要指定上传图片的尺寸     if(file.size > 1024*500) { //大小超过500kb      _this.$message.error('图片太大,请重新选择');      return false;     }     const isSize = new Promise((resolve, reject)=>{      let _URL = window.URL || window.webkitURL;      let img = new Image();      img.onload = function () {       if(!_checkSize || (_checkSize && img.width==_this.imgWidth && img.height==_this.imgHeight)) {        resolve();       }       else {        reject();       }      }      img.src = _URL.createObjectURL(file);     }).then(()=>{      return file;     }, ()=>{      _this.$message.error('图片尺寸不对,请重新选择');      return Promise.reject();     });     return isSize;    },      uploadImage(params) {     console.log(params);     let uploadData = new FormData();     uploadData.append('file', params.file);     let config = {      headers: {       'Content-Type': 'multipart/form-data'      }     };     this.uploadPoster('homed'+new Date().getTime()+'/'+params.file.name, uploadData, config)     .then(res=>{      if(res.status == 200) {       params.onSuccess();       this.imgUrls.push({name:params.file.name, url:res.data.url});       console.log(this.imgUrls);      }     }).catch(error=>{      params.onError();      this.$message.error('上传失败');     });    },      removeImage(file, fileList) {     console.log(fileList);    },      uploadPoster(url, obj, config) {     let poster_upload_path = "http://xxxxxxxxxxxx/httpdocsup/poster/news/";     return axios.post(poster_upload_path+url, obj, config);    }   }  })

Vue的优点

Vue具体轻量级框架、简单易学、双向数据绑定、组件化、数据和结构的分离、虚拟DOM、运行速度快等优势,Vue中页面使用的是局部刷新,不用每次跳转页面都要请求所有数据和dom,可以大大提升访问速度和用户体验。

感谢你能够认真阅读完这篇文章,希望小编分享的“vue+element-ui+axios如何实现图片上传”这篇文章对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,更多相关知识等着你来学习!


文章标题:vue+element-ui+axios如何实现图片上传
网站地址:http://ybzwz.com/article/pehigh.html

其他资讯