vue+vant 上传图片需要注意的地方
程序员文章站
2022-06-05 13:32:11
<van-uploader v-model="filelist" multiple :after-read="afterread" :max-count="1" />
1:上传文件流,提交的模式 肯定得 form-data模式
2:上传的文件file 做出处理我这里做的只能选择一张
afterread(file){ console.log(file); //控制台可以看见图片信息 if(this.filelist.length > 1){ this.filelist.splice(1); this.$msg({ text:'只能选择这么多!', type:'info' }) return false; } let files = this.files; files.push(file.file); },
3:vue 里面axios 拦截处理 因为上传模式必须是from-data 所以就要设置 config.headers['content-type'] = 'multipart/form-data';
//http request 拦截器 axios.interceptors.request.use((config) => { if (config.method === 'post') { if( config.data && !config.data.i ){ config.headers['content-type'] = 'multipart/form-data'; }else{ config.data = qs.stringify(config.data); } // if ( config.data ){ // if ( config.data.i === undefined ){ // config.headers['content-type'] = 'multipart/form-data'; // }else{ // config.data = qs.stringify(config.data); // } // } } return config; }, (error) => { return promise.reject(error); })
4:就是上次图片前端做的处理需要用到 new formdata() 做出处理,因为是文件流,直接打印是看不出来的详情去看官网new formdata()。
wineorder(){ console.log(this.files) this.disabled = true; const data = new formdata(); const user = json.parse(sessionstorage.getitem('user')); data.append('i',user.uniacid); data.append('token',user.token); data.append('bid',user.bid); data.append('roomid',this.roomid); data.append('booker',this.dingname); data.append('guestname',this.username); data.append('type',this.type); data.append('tel',this.phone); data.append('endtime',this.date); data.append('file',this.files[0]); data.append('goodsinfo',json.stringify(this.savewinelist)); wineorder(data).then((e)=>{ if( e.code == 0 ){ this.disabled = false; e.totalmoney = ''; var c ={ topic:"", data:e, type:'savewine' } return; settimeout(() => { window.location.href="setterorder?c=" rel="external nofollow" +json.stringify(c); }, 1500); }else{ this.disabled = false; this.$msg({ text:e.msg, type:'info' }) } }) },
效果图
剩下的就交给后端处理就行了,到这里就完全可以了
以上就是vue+vant 上传图片需要注意的地方的详细内容,更多关于vue+vant 上传图片的资料请关注其它相关文章!
上一篇: ASP 隐藏下载地址及防盗链代码
下一篇: asp打包类
推荐阅读
-
MySQL中修改表结构时需要注意的一些地方
-
浅谈使用setBounds()方法需要注意的地方
-
浅谈使用setBounds()方法需要注意的地方
-
Struts2需要注意的一个小地方 博客分类: Struts2 JSPXMLWebworkServletStruts
-
Struts2需要注意的一个小地方 博客分类: Struts2 JSPXMLWebworkServletStruts
-
使用XHTML1.0 Strict中需要特别注意的地方
-
php in_array 函数使用说明与in_array需要注意的地方说明
-
php in_array 函数使用说明与in_array需要注意的地方说明
-
php中使用iconv函数时需要注意的地方
-
php in_array 函数使用说明与in_array需要注意的地方说明_PHP