vue el-upload上传文件的示例代码


Posted in Vue.js onDecember 21, 2020

话不多说 直接上代码

<el-upload
       :action="actionUrl"
       class="avatar-uploader"
       :multiple="false"
       name="files"
       ref="upload"
       :file-list="fileList"
       :on-preview="handlePreview"
       :on-success="handleSuccess"
       :before-upload ="beforeUpload"
       :http-request="httpRequest"
       :on-exceed="handleExceed"
       :on-change="handleChanged"
       accept=".csv,.xls,.xlsx"
       :auto-upload="false"
      >
<el-button slot="trigger" size="small">选取文件</el-button>

<el-button style="margin-left: 10px;" size="small" type="primary" @click="submitUpload">上传到服务器</el-button>

<div slot="tip" class="el-upload__tip">只能上传csv/xslx/xsl文件,且不超过1M</div>
</el-upload>
actionUrl: `${env.imgCaptchaUrl}**/upload`,
fileList: [],

handleChanged(file,fileList){
   this.fileList = fileList
  },
  handleExceed (file, fileList) {
   console.log(file);
  },
  handleSuccess (res, file) {
   console.log(file);
   console.log(res);
  },
  handlePreview(file){
   console.log(file);
  },
  beforeUpload (file) {
   if (file.size / 1024 / 1024 > 1) {
    Vue.$vux.toast.text('上传文件不超过1M')
    return false
   }
   var ext = file.name.substring(file.name.lastIndexOf('.') + 1)
   const extension =
    ext === 'csv' ||
    ext === 'CSV' ||
    ext === 'xlsx' ||
    ext === 'xls'
   if (!extension) {
    Vue.$vux.toast.text('上传文件格式只能为csv、xlsx/xls')
    return false
   }
  },
  httpRequest (opt) {
   const _this = this
   const file = opt.file
   Vue.$vux.toast.text('文件上传中...')
   var reader = new FileReader()
   reader.readAsDataURL(file)
   reader.onload = function (e) {
    let imgType = ''
    var ext = file.name.substring(file.name.lastIndexOf('.') + 1)
    if (ext === 'csv' ) {
     imgType = 'csv'
    }
    if (ext === 'xlsx' || ext === 'xls') {
     imgType = 'xlsx'
    }
    uploadCsv({
     files: this.result.replace(`data:image/${imgType};base64,`, '')
    })
     .then(res => {
      if (res.errno === 0) {
       Vue.$vux.toast.text('上传成功')
       _this.account.license_url = res.data.url
      }
     })
     .catch(err => {})
   }
  },
  submitUpload(){
   if(this.fileList.length==0){
    this.successDialog = "请先选择文件";
    this.sussAlog = true;
    return
   }
   this.$refs.upload.submit();
  },

onDownload(){
   let start = ""
   let end = ""
   if(this.form.time){
    start = parseTime(this.form.time[0]);
    end = parseTime(this.form.time[1]);
   }
   delete(this.form.time)
   Object.assign(this.form, { 
    first_time: start, 
    end_time: end ,
   });
   let { 
      first_time,
      end_time,
     } = this.form;
   window.open(this.downUrl+"lm/downloadModel?"+
   "&first_time="+first_time+
   "&end_time="+end_time
   , '_blank');
  },

以上就是vue el-upload上传文件的示例代码的详细内容,更多关于vue el-upload上传文件的资料请关注三水点靠木其它相关文章!

Vue.js 相关文章推荐
vue+iview分页组件的封装
Nov 17 Vue.js
VUE+Element实现增删改查的示例源码
Nov 23 Vue.js
vue-router定义元信息meta操作
Dec 07 Vue.js
Vue解决移动端弹窗滚动穿透问题
Dec 15 Vue.js
vue 数据操作相关总结
Dec 17 Vue.js
vue 递归组件的简单使用示例
Jan 14 Vue.js
聊聊vue 中的v-on参数问题
Jan 29 Vue.js
Vue单页面应用中实现Markdown渲染
Feb 14 Vue.js
vue+flask实现视频合成功能(拖拽上传)
Mar 04 Vue.js
vue中data改变后让视图同步更新的方法
Mar 29 Vue.js
vue @click.native 绑定原生点击事件
Apr 22 Vue.js
vue css 相对路径导入问题级踩坑记录
Jun 05 Vue.js
vue 在单页面应用里使用二级套嵌路由
Dec 19 #Vue.js
vue中如何添加百度统计代码
Dec 19 #Vue.js
vue 导航守卫和axios拦截器有哪些区别
Dec 19 #Vue.js
Vue——解决报错 Computed property &quot;****&quot; was assigned to but it has no setter.
Dec 19 #Vue.js
Vue实现手机号、验证码登录(60s禁用倒计时)
Dec 19 #Vue.js
Vue——前端生成二维码的示例
Dec 19 #Vue.js
如何在vue中使用kindeditor富文本编辑器
Dec 19 #Vue.js
You might like
php下使用SimpleXML 处理XML 文件
2010/02/27 PHP
php小型企业库存管理系统的设计与实现代码
2011/05/16 PHP
php $_SERVER windows系统与linux系统下的区别说明
2014/02/14 PHP
gearman中任务的优先级和返回状态实例分析
2020/02/27 PHP
用javascript实现的激活输入框后隐藏初始内容
2007/06/29 Javascript
javascript-TreeView父子联动效果保持节点状态一致
2007/08/12 Javascript
ExtJS4给Combobox设置列表中的默认值示例
2014/05/02 Javascript
jQueryMobile之Helloworld与页面切换的方法
2015/02/04 Javascript
JavaScript中的Reflect对象详解(ES6新特性)
2016/07/22 Javascript
jQuery插件FusionCharts绘制的3D环饼图效果示例【附demo源码】
2017/04/02 jQuery
React学习笔记之列表渲染示例详解
2017/08/22 Javascript
原生实现一个react-redux的代码示例
2018/06/08 Javascript
微信小程序webview组件交互,内联h5页面并网页实现微信支付实现解析
2019/08/16 Javascript
layui表格 列自动适应大小失效的解决方法
2019/09/06 Javascript
Node 代理访问的实现
2019/09/19 Javascript
Vue 组件的挂载与父子组件的传值实例
2020/09/02 Javascript
在Python中使用列表生成式的教程
2015/04/27 Python
Python获取Redis所有Key以及内容的方法
2019/02/19 Python
python实现学员管理系统
2019/02/26 Python
PyQT5速成教程之Qt Designer介绍与入门
2020/11/02 Python
Python高阶函数与装饰器函数的深入讲解
2020/11/10 Python
python爬虫搭配起Bilibili唧唧的流程分析
2020/12/01 Python
前端使用canvas生成盲水印的加密解密的实现
2020/12/16 HTML / CSS
纪伊国屋新加坡网上书店:Kinokuniya新加坡
2017/12/29 全球购物
英国剑桥包中文官网:The Cambridge Satchel Company中国
2018/11/06 全球购物
简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程
2016/01/06 面试题
优秀员工自荐书范文
2013/12/08 职场文书
刘胡兰的英雄事迹材料
2014/02/11 职场文书
纠纷协议书
2014/04/16 职场文书
环境保护标语
2014/06/20 职场文书
民用住房租房协议书
2014/10/29 职场文书
追讨欠款律师函
2015/05/27 职场文书
我的法兰西岁月观后感
2015/06/09 职场文书
热血教师观后感
2015/06/10 职场文书
如何使用Python对NetCDF数据做空间相关分析
2021/04/21 Python
Go语言grpc和protobuf
2022/04/13 Golang