在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 相关文章推荐
JQuery 写的个性导航菜单
Dec 24 Javascript
网页右键ie不支持event.preventDefault和event.returnValue (需要加window)
Feb 22 Javascript
jQuery中阻止冒泡事件的方法介绍
Apr 12 Javascript
jQuery实现径向动画菜单效果
Jul 17 Javascript
javascript实现网页子页面遍历回调的方法(涉及 window.frames、递归函数、函数上下文)
Jul 27 Javascript
JS判断字符串字节数并截取长度的方法
Mar 05 Javascript
JavaScript编码风格指南(中文版)
Aug 26 Javascript
vue打包的时候自动将px转成rem的操作方法
Jun 20 Javascript
vue使用v-if v-show页面闪烁,div闪现的解决方法
Oct 12 Javascript
vue src动态加载请求获取图片的方法
Oct 17 Javascript
解决node-sass偶尔安装失败的方法小结
Dec 05 Javascript
Vue2.x-使用防抖以及节流的示例
Mar 02 Vue.js
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
TMDPHP 模板引擎使用教程
2012/03/13 PHP
ThinkPHP路由机制简介
2016/03/23 PHP
PHP调试及性能分析工具Xdebug详解
2017/02/09 PHP
Ext对基本类型的扩展 ext,extjs,format
2010/12/25 Javascript
如何使用JS获取IE上传文件路径(IE7,8)
2013/07/08 Javascript
Javascript函数式编程简单介绍
2015/10/11 Javascript
jquery验证邮箱格式是否正确实例讲解
2015/11/16 Javascript
javascript弹性运动效果简单实现方法
2016/01/08 Javascript
jQuery组件easyui基本布局实现代码
2016/08/25 Javascript
使用json来定义函数,在里面可以定义多个函数的实现方法
2016/10/28 Javascript
JS 组件系列之Bootstrap Table的冻结列功能彻底解决高度问题
2017/06/30 Javascript
关于定制FileField中的上传文件名称问题
2017/08/22 Javascript
详解React native全局变量的使用(跨组件的通信)
2017/09/07 Javascript
深入浅析vue组件间事件传递
2017/12/29 Javascript
nodejs中密码加密处理操作详解
2018/03/20 NodeJs
详解javascript设计模式三:代理模式
2019/03/25 Javascript
vue抽出组件并传值实例
2020/07/31 Javascript
[42:06]2019国际邀请赛全明星赛 8.23
2019/09/05 DOTA
jupyter安装小结
2016/03/13 Python
python 计算一个字符串中所有数字的和实例
2019/06/11 Python
Django中reverse反转并且传递参数的方法
2019/08/06 Python
基于python实现学生信息管理系统
2019/11/22 Python
Python单链表原理与实现方法详解
2020/02/22 Python
python GUI框架pyqt5 对图片进行流式布局的方法(瀑布流flowlayout)
2020/03/12 Python
CSS3实现多背景展示效果通过CSS3定位多张背景
2014/08/10 HTML / CSS
Nike西班牙官方网站:Nike.com (ES)
2017/10/30 全球购物
查询优化的一般准则有哪些
2015/03/08 面试题
校庆筹备方案
2014/03/30 职场文书
项目合作协议书
2014/04/16 职场文书
自强之星事迹材料
2014/05/12 职场文书
临床医学专业求职信
2014/08/08 职场文书
竞选班干部演讲稿500字
2014/08/20 职场文书
合法的离婚协议书范本
2014/10/23 职场文书
中考学习决心书
2015/02/04 职场文书
2015年小学教科研工作总结
2015/07/20 职场文书
JAVA 线程池(池化技术)的实现原理
2022/04/28 Java/Android