在vue项目中使用element-ui的Upload上传组件的示例


Posted in Javascript onFebruary 08, 2018

本文介绍了vue项目中使用element-ui的Upload上传组件的示例,分享给大家,具体如下:

<el-upload
        v-else
        class='ensure ensureButt'
        :action="importFileUrl"
        :data="upLoadData"
        name="importfile"
        :onError="uploadError"
        :onSuccess="uploadSuccess"
        :beforeUpload="beforeAvatarUpload"
        >
        <el-button size="small" type="primary">确定</el-button>

其中importFileUrl是后台接口,upLoadData是上传文件时要上传的额外参数,uploadError是上传文件失败时的回掉函数,uploadSuccess是文件上传成功时的回掉函数,beforeAvatarUpload是在上传文件之前调用的函数,我们可以在这里进行文件类型的判断。

data () {
  importFileUrl: 'http:dtc.com/cpy/add',
  upLoadData: {
    cpyId: '123456', 
    occurTime: '2017-08'
  }
},
methods: {
  // 上传成功后的回调
  uploadSuccess (response, file, fileList) {
   console.log('上传文件', response)
  },
  // 上传错误
  uploadError (response, file, fileList) {
   console.log('上传失败,请重试!')
  },
  // 上传前对文件的大小的判断
  beforeAvatarUpload (file) {
   const extension = file.name.split('.')[1] === 'xls'
   const extension2 = file.name.split('.')[1] === 'xlsx'
   const extension3 = file.name.split('.')[1] === 'doc'
   const extension4 = file.name.split('.')[1] === 'docx'
   const isLt2M = file.size / 1024 / 1024 < 10
   if (!extension && !extension2 && !extension3 && !extension4) {
    console.log('上传模板只能是 xls、xlsx、doc、docx 格式!')
   }
   if (!isLt2M) {
    console.log('上传模板大小不能超过 10MB!')
   }
   return extension || extension2 || extension3 || extension4 && isLt2M
  }
}

最近在适用VUE作为前端框架做自己的项目,在做到需要上传文件到服务器时,同事告诉我upload之中的action也就是上传地址不能动态的去更改,然后去看了一下,需要做以下处理才能动态的使用:

action是一个必填参数,且其类型为string,我们把action写成:action,然后后面跟着一个方法名,调用方法,返回你想要的地址,代码示例:

//html 代码
<el-upload :action="UploadUrl()" :on-success="UploadSuccess" :file-list="fileList">
  <el-button size="small" type="primary" >点击上传</el-button>
  <div slot="tip" class="el-upload__tip"></div>
</el-upload>
// js 代码在 methods中写入需要调用的方法
methods:{
  UploadUrl:function(){
    return "返回需要上传的地址";   
  }  
}

这是我解决的方法,希望能帮到需要的人

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Firebug 字幕文件JSON地址获取代码
Oct 28 Javascript
js 表格隔行颜色
Dec 02 Javascript
全面解析Bootstrap弹窗的实现方法
Dec 01 Javascript
深入理解Javascript中的自执行匿名函数
Jun 03 Javascript
内容滑动切换效果jquery.hwSlide.js插件封装
Jul 07 Javascript
全面了解JavaScirpt 的垃圾(garbage collection)回收机制
Jul 11 Javascript
jquery获取input type=text中的值的各种方式(总结)
Dec 02 Javascript
JS得到当前时间的方法示例
Mar 24 Javascript
JS传播事件、取消事件默认行为、阻止事件传播详解
Aug 14 Javascript
JS实现基于拖拽改变物体大小的方法
Jan 23 Javascript
微信小程序实现签到弹窗动画
Sep 21 Javascript
vue+Element-ui实现登录注册表单
Nov 17 Javascript
vue中实现methods一个方法调用另外一个方法
Feb 08 #Javascript
使用vux实现上拉刷新功能遇到的坑
Feb 08 #Javascript
jQuery实现的简单图片轮播效果完整示例
Feb 08 #jQuery
jQuery 防止相同的事件快速重复触发方法
Feb 08 #jQuery
AnglarJs中的上拉加载实现代码
Feb 08 #Javascript
利用vue.js实现被选中状态的改变方法
Feb 08 #Javascript
vue中阻止click事件冒泡,防止触发另一个事件的方法
Feb 08 #Javascript
You might like
PHP性能优化大全(php.ini)
2016/05/20 PHP
php的socket编程详解
2016/11/20 PHP
php mysql_real_escape_string addslashes及mysql绑定参数防SQL注入攻击
2016/12/23 PHP
php如何实现数据库的备份和恢复
2020/11/30 PHP
TFDN图片播放器 不错自动播放
2006/10/03 Javascript
jQuery ui1.7 dialog只能弹出一次问题
2009/08/27 Javascript
学习ExtJS 访问容器对象
2009/10/07 Javascript
js 数据类型转换总结笔记
2011/01/17 Javascript
JS代码放在head和body中的区别分析
2011/12/01 Javascript
创建公共调用 jQuery Ajax 带返回值
2012/08/01 Javascript
ExtJS4如何自动生成控制grid的列显示、隐藏的checkbox
2014/05/02 Javascript
javascript实现浏览器窗口传递参数的方法
2014/09/03 Javascript
JavaScript获取页面中第一个锚定文本的方法
2015/04/03 Javascript
不想让浏览器运行javascript脚本的方法
2015/11/20 Javascript
JavaScript判断微信浏览器实例代码
2016/06/13 Javascript
javascript和jQuery实现网页实时聊天的ajax长轮询
2016/07/20 Javascript
基于js实现二级下拉联动
2016/12/17 Javascript
Bootstrap3多级下拉菜单
2017/02/24 Javascript
JavaScript字符串_动力节点Java学院整理
2017/06/27 Javascript
使用3D引擎threeJS实现星空粒子移动效果
2020/09/13 Javascript
jQuery滑动效果实现方法分析
2018/09/05 jQuery
JS控制只能输入数字并且最多允许小数点两位
2019/11/24 Javascript
Vue watch响应数据实现方法解析
2020/07/10 Javascript
[56:14]Fnatic vs OG 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
Python编程实现二叉树及七种遍历方法详解
2017/06/02 Python
详解appium+python 启动一个app步骤
2017/12/20 Python
对numpy中轴与维度的理解
2018/04/18 Python
python 集合 并集、交集 Series list set 转换的实例
2018/05/29 Python
Python中存取文件的4种不同操作
2018/07/02 Python
html5唤起app的方法
2017/11/30 HTML / CSS
HTML5 video进入全屏和退出全屏的实现方法
2020/07/28 HTML / CSS
最新茶叶店创业计划书
2014/01/14 职场文书
全陪导游词
2015/02/04 职场文书
导游词之秦皇岛燕塞湖
2020/01/03 职场文书
MySQL数据迁移相关总结
2021/04/29 MySQL
Python可视化神器pyecharts之绘制地理图表练习
2022/07/07 Python