vue实现图片上传的方法
更新:HHH   时间:2023-1-7


小编给大家分享一下vue实现简单图片上传的方法,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨方法吧!

功能

  • 实现图片上传
  • 显示进度条
     
<template>
 <div class="about">
 <div>
 <div>
  <img :src="'https://www.xxx.com'+item" alt="" v-for="item in pics" >
 </div>
 <label><input type="file" ref="file" @change="up()">+<span class="label" :></span></label>
 </div> 
 </div>
</template>
<style scoped="scoped">
 label{
 width: 100px;
 height: 100px;
 display: inline-block;
 overflow: hidden;
 background-color: #CCCCCC;
 color: #FFFFFF;
 font-size: 48px;
 text-align: center;
 line-height: 100px;
 position: relative;
 }
 input{display: none;}
 .label{
 position: absolute;
 display: inline-block;
 bottom: 0;
 left: 0;
 height: 2px;
 width: 0%;
 background-color: #FFA500; 
 }
 
</style>
<script>
 export default{
 name: 'About',
 data(){
 return{
  pics:[],
  pre:0,
 }
 },
 methods:{
 up(){
 var that=this;
 var file=this.$refs.file.files[0];
 var data=new FormData();
 data.append("file",file);
 this.$http.post("https://www.xxx.com/ajax/file.php",data,{
  onUploadProgress:e=>{
  this.pre=e.loaded/e.total*100
  console.log("+++",e)
  }
 })
 .then(res=>{
  if(res.data.error==0){
  this.pics.push(res.data.pic)
  console.log("----",res)
  }
  
 })
 .catch(err=>{
  console.log(err)
 })
 this.pre=0
 },
 
 }
 }
</script>

看完了这篇文章,相信你对vue实现简单图片上传的方法有了一定的了解,想了解更多相关知识,欢迎关注天达云行业资讯频道,感谢各位的阅读!

返回开发技术教程...