Element-ui upload上传文件限制的解决方法


Posted in Javascript onJanuary 22, 2021

问题

Element-ui upload上传文件限制的解决方法

在accept中添加上传文件的类型只能起到“表面”作用,选择“所有文件”之后,还是可以上传任何类型的文件,根本起不到限制作用。

解决办法

在before-upload(上传文件之前的钩子,参数为上传的文件,若返回 false 或者返回 Promise 且被 reject,则停止上传。)钩子里去做判断。这里有一个坑,当你设置了 :auto-upload="false"的时候, 这个钩子是不会被触发的,因此也可以在on-change中做判断。

上代码

// :before-upload或者:on-change绑定的方法
beforeUpload(file, fileList) {
   if (file.size / (1024 * 1024) > 500) {  // 限制文件大小
     this.$message.warning(`当前限制文件大小不能大于500M`)
     return false
   }
   
   let suffix = this.getFileType(file.name) //获取文件后缀名
   let suffixArray = ['jpg', 'png', 'jpeg', 'gif'] //限制的文件类型,根据情况自己定义
   if (suffixArray.indexOf(suffix) === -1) {
     this.$message({
       message: '文件格式错误',
       type: 'error',
       duration: 2000
     })
   }
   return suffixArray
 },
 getFileType(name) {
   let startIndex = name.lastIndexOf('.')
   if (startIndex !== -1) {
     return name.slice(startIndex + 1).toLowerCase()
   } else {
     return ''
   }
 }

到此这篇关于Element-ui upload上传文件限制的解决方法的文章就介绍到这了,更多相关Element upload上传限制内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
JS 实现图片直接下载示例代码
Jul 22 Javascript
jQuery学习总结之jQuery事件
Jun 30 Javascript
Javascript数据结构与算法之列表详解
Mar 12 Javascript
js控制多图左右滚动切换效果代码分享
Aug 26 Javascript
Angularjs的Controller间通信机制实例分析
Nov 07 Javascript
JavaScript触发onScroll事件的函数节流详解
Dec 14 Javascript
vue脚手架vue-cli的学习使用教程
Jun 06 Javascript
轻松理解vue的双向数据绑定问题
Oct 30 Javascript
Vue中正确使用jQuery的方法
Oct 30 jQuery
Vue组件之极简的地址选择器的实现
May 31 Javascript
微信小程序日期选择器实例代码
Jul 18 Javascript
微信小程序中上传图片并进行压缩的实现代码
Aug 28 Javascript
js canvas实现五子棋小游戏
Jan 22 #Javascript
Vue 集成 PDF.js 实现 PDF 预览和添加水印的步骤
Jan 22 #Vue.js
element-ui 弹窗组件封装的步骤
Jan 22 #Javascript
动态实现element ui的el-table某列数据不同样式的示例
Jan 22 #Javascript
原生js实现放大镜组件
Jan 22 #Javascript
Vue仿Bibibili首页的问题
Jan 21 #Vue.js
如何在vue 中使用柱状图 并自修改配置
Jan 21 #Vue.js
You might like
YII Framework框架教程之国际化实现方法
2016/03/14 PHP
PHP中Array相关函数简介
2016/07/03 PHP
javascript[js]获取url参数的代码
2007/10/17 Javascript
js多级树形弹出一个小窗口层(非常好用)实例代码
2013/03/19 Javascript
JavaScript的React框架中的JSX语法学习入门教程
2016/03/05 Javascript
Bootstrap每天必学之按钮(Button)插件
2016/04/25 Javascript
Javascript typeof与instanceof的区别
2016/10/18 Javascript
jstree创建无限分级树的方法【基于ajax动态创建子节点】
2016/10/25 Javascript
loading动画特效小结
2017/01/22 Javascript
vue+iview写个弹框的示例代码
2017/12/05 Javascript
vue.js默认路由不加载linkActiveClass问题的解决方法
2017/12/11 Javascript
使用socket.io实现简单聊天室案例
2018/01/02 Javascript
nodejs实现日志读取、日志查找及日志刷新的方法分析
2019/05/20 NodeJs
[02:57]DOTA2英雄基础教程 风行者
2014/01/16 DOTA
[00:43]DOTA2小紫本全民票选福利PA至宝全方位展示
2014/11/25 DOTA
[04:29]【TI9采访】OG.N0tail在胜者组决赛后接受采访
2019/08/25 DOTA
[04:54]DOTA2-DPC中国联赛1月31日Recap集锦
2021/03/11 DOTA
python 转换 Javascript %u 字符串为python unicode的代码
2016/09/06 Python
Python中异常重试的解决方案详解
2017/05/05 Python
Python实现变量数值交换及判断数组是否含有某个元素的方法
2017/09/18 Python
python实现字符串加密成纯数字
2019/03/19 Python
详解Python3中setuptools、Pip安装教程
2019/06/18 Python
基于python框架Scrapy爬取自己的博客内容过程详解
2019/08/05 Python
详解Python 中sys.stdin.readline()的用法
2019/09/12 Python
python中提高pip install速度
2020/02/14 Python
python 无损批量压缩图片(支持保留图片信息)的示例
2020/09/22 Python
美国山地自行车、露营、户外装备和服装购物网站:Aventuron
2018/05/05 全球购物
电脑教师的教学自我评价
2013/11/26 职场文书
软件部经理岗位职责范本
2014/02/25 职场文书
英语邀请函范文
2015/02/02 职场文书
小学教师个人总结
2015/02/05 职场文书
期末个人总结范文
2015/02/13 职场文书
汽车销售助理岗位职责
2015/04/14 职场文书
无保留意见审计报告
2015/06/05 职场文书
委托收款证明
2015/06/23 职场文书
Java如何实现通过键盘输入一个数组
2022/02/15 Java/Android