vue:上传(改变)图片

  1. 首先要创键FormData
  2. 然后将传入的参数添加到实例当中
  3. 最后在请求接口传参
  4. 代码演示:

vue组件内使用

// my.vue
<van-popup v-model="show" position="bottom">
 	<ul class="popup-box">
   		<p>拍照</p>
   		<p>
   			// 点击即可调用
   			<van-uploader 
   				result-type="file" :
   				after-read="afterRead" >    // 选中文件后回调函数
            	从手机相册选择
         	</van-uploader>
   		</p>
   		<p @click="show0 = false">取消</p>
 	</ul>
</van-popup>
// config/infex.js 
// img 头像 : file:(binary)
img(file){
	return request(METHOD.POST,URL.img, file);
},

上传至服务器

// my.vue
afterRead(item) {
   	//创建FormData  接口只支持FormData接口 传参
 	let data = new FormData();
 	data.append("file", item.file);
 	//弹框显示隐藏
 	this.show = false;
 	//请求更换图片的接口
	 this.$API.img(data).then((res) => {
 		//修改图片地址
  		this.$API.user({ avatar:res.data.data.path }).then(res=>{
     		if(res.data.code == 200){
     			//重新请求接口获取数据
       			this.$API.userinfo().then(res=>{
       				//重新赋值
         			this.list=res.data.data
       			})
   	      	}else{
     			//失败后提示弹框
       			this.$Message(res.data.msg)
     		}
   		})
 	});
},
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值