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 获取浏览器高度和宽度值(多浏览器)
Sep 02 Javascript
jquery 删除字符串最后一个字符的方法解析
Feb 11 Javascript
iframe跨域通信封装详解
Aug 11 Javascript
原生javascript实现解析XML文档与字符串
Mar 01 Javascript
node.js从数据库获取数据
May 08 Javascript
解析AngularJS中get请求URL出现的跨域问题
Dec 01 Javascript
浅谈vue+webpack项目调试方法步骤
Sep 11 Javascript
对于input 框限定输入值为浮点型的js代码
Sep 25 Javascript
Vue项目中设置背景图片方法
Feb 21 Javascript
Node.js使用cookie保持登录的方法
May 11 Javascript
js如何找出字符串中的最长回文串
Jun 04 Javascript
javascript实现前端input密码输入强度验证
Jun 24 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
基于xcache的配置与使用详解
2013/06/18 PHP
php自动识别文件编码并转换为UTF-8的方法
2014/06/12 PHP
codeigniter显示所有脚本执行时间的方法
2015/03/21 PHP
我整理的PHP 7.0主要新特性
2016/01/07 PHP
PHP加MySQL消息队列深入理解
2021/02/27 PHP
csdn 博客中实现运行代码功能实现
2009/08/29 Javascript
Lazy Load 延迟加载图片的 jQuery 插件
2010/02/06 Javascript
jquery学习笔记 用jquery实现无刷新登录
2011/08/08 Javascript
基于jquery实现动态竖向柱状条特效
2016/02/12 Javascript
如何编写jquery插件
2017/03/29 jQuery
基于Vue2实现的仿手机QQ单页面应用功能(接入聊天机器人 )
2017/03/30 Javascript
详解vue服务端渲染(SSR)初探
2017/06/19 Javascript
layer弹出的iframe层在执行完毕后关闭当前弹出层的方法
2018/08/17 Javascript
JS判断用户用的哪个浏览器实例详解
2018/10/09 Javascript
Vue.js组件间通信方式总结【推荐】
2018/11/23 Javascript
Angular(5.2->6.1)升级小结
2018/12/27 Javascript
layui table单元格事件修改值的方法
2019/09/24 Javascript
Python中shape计算矩阵的方法示例
2017/04/21 Python
python opencv 图像拼接的实现方法
2019/06/27 Python
浅谈python3 构造函数和析构函数
2020/03/12 Python
canvas实现烟花的示例代码
2020/01/16 HTML / CSS
荟萃全球保健品:维他购
2018/05/09 全球购物
艺龙旅行网酒店预订:国内、港澳台酒店
2018/06/26 全球购物
学生档案自我鉴定
2013/10/07 职场文书
历史学专业个人的自我评价
2013/10/13 职场文书
医学毕业生自我鉴定
2013/10/30 职场文书
劲霸男装广告词改编版
2014/03/21 职场文书
廉洁使者实施方案
2014/03/29 职场文书
员工三分钟演讲稿
2014/08/19 职场文书
刑事辩护授权委托书范本
2014/10/17 职场文书
研究生导师评语
2014/12/31 职场文书
2015年大学生实习评语
2015/03/25 职场文书
HAM-2000摩机图
2021/04/22 无线电
tensorflow中的梯度求解及梯度裁剪操作
2021/05/26 Python
Java基础——Map集合
2022/04/01 Java/Android
Python OpenCV实现图形检测示例详解
2022/04/08 Python