vue+vant 上传图片需要注意的地方


Posted in Vue.js onJanuary 03, 2021
<van-uploader v-model="fileList" multiple :after-read="afterRead" :max-count="1" />

1:上传文件流,提交的模式 肯定得 form-data模式

vue+vant 上传图片需要注意的地方

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 上传图片需要注意的地方的详细内容,更多关于vue+vant 上传图片的资料请关注三水点靠木其它相关文章!

Vue.js 相关文章推荐
Vue如何循环提取对象数组中的值
Nov 18 Vue.js
用vue设计一个日历表
Dec 03 Vue.js
vue3使用vue-count-to组件的实现
Dec 25 Vue.js
antdesign-vue结合sortablejs实现两个table相互拖拽排序功能
Jan 08 Vue.js
vue+element table表格实现动态列筛选的示例代码
Jan 14 Vue.js
用vite搭建vue3应用的实现方法
Feb 22 Vue.js
vue+django实现下载文件的示例
Mar 24 Vue.js
idea编译器vue缩进报错问题场景分析
Jul 04 Vue.js
Vue自定义铃声提示音组件的实现
Jan 22 Vue.js
vue-cil之axios的二次封装与proxy反向代理使用说明
Apr 07 Vue.js
Vue ECharts实现机舱座位选择展示功能
May 15 Vue.js
vue el-table实现递归嵌套的示例代码
Aug 14 Vue.js
vue调用微信JSDK 扫一扫,相册等需要注意的事项
Jan 03 #Vue.js
vue中使用echarts的示例
Jan 03 #Vue.js
vue 动态生成拓扑图的示例
Jan 03 #Vue.js
Vue中强制组件重新渲染的正确方法
Jan 03 #Vue.js
vue中activated的用法
Jan 03 #Vue.js
vue实现登录功能
Dec 31 #Vue.js
vue 实现图片懒加载功能
Dec 31 #Vue.js
You might like
浅谈PHP正则表达式中修饰符/i, /is, /s, /isU
2014/10/21 PHP
php使用explode()函数将字符串拆分成数组的方法
2015/02/17 PHP
Laravel 5.3 学习笔记之 配置
2016/08/28 PHP
一段好玩的JavaScript代码
2006/12/01 Javascript
jQuery的实现原理的模拟代码 -4 重要的扩展函数 extend
2010/08/03 Javascript
一个报数游戏js版(约瑟夫环问题)
2010/08/05 Javascript
修改js Calendar日历控件 兼容IE9/谷歌/火狐
2013/01/04 Javascript
禁止空格提交表单的js代码
2013/11/17 Javascript
JavaScript阻止事件冒泡示例分享
2014/12/28 Javascript
javascript定时器完整实例
2015/02/10 Javascript
jquery实现实时改变网页字体大小、字体背景色和颜色的方法
2015/08/05 Javascript
基于JavaScript实现鼠标向下滑动加载div的代码
2016/08/31 Javascript
轻松实现js弹框显示选项
2016/09/13 Javascript
原生javascript上传图片带进度条【实例分享】
2017/04/06 Javascript
详解webpack解惑:require的五种用法
2017/06/09 Javascript
Angular实现的内置过滤器orderBy排序与模糊查询功能示例
2017/12/29 Javascript
关于jquery layui弹出层的使用方法
2018/04/21 jQuery
JavaScript实现一个简易的计算器实例代码
2018/05/10 Javascript
vue源码学习之Object.defineProperty对象属性监听
2018/05/30 Javascript
vue elementUI tree树形控件获取父节点ID的实例
2018/09/12 Javascript
解决JQuery的ajax函数执行失败alert函数弹框一闪而过问题
2019/04/10 jQuery
小程序瀑布流组件实现翻页与图片懒加载
2020/05/19 Javascript
JS+CSS实现过渡特效
2021/01/02 Javascript
Python实现简单的可逆加密程序实例
2015/03/05 Python
pygame游戏之旅 添加游戏暂停功能
2018/11/21 Python
python将excel转换为csv的代码方法总结
2019/07/03 Python
python 实现GUI(图形用户界面)编程详解
2019/07/17 Python
python字符串的拼接方法总结
2019/11/18 Python
python循环嵌套的多种使用方法解析
2019/11/29 Python
巴西婴儿用品商店:Bebe Store
2017/11/23 全球购物
彪马日本官网:PUMA日本
2019/01/31 全球购物
加拿大领先家居家具网上购物:Aosom.ca
2020/05/27 全球购物
电子商务个人自荐信
2013/12/12 职场文书
校园餐饮创业计划书
2014/01/10 职场文书
总经理任命书
2014/03/29 职场文书
电气自动化求职信
2014/06/24 职场文书