1. 在el-upload控件中加入on-change方法:

<el-upload id="file"ref="upload"slot="append":action="file.action":with-credentials="true"name="file":data="file.data":show-file-list="false"accept=".xls,.xlsx,.csv":disabled="isDisabled":auto-upload="false":on-change="handleChangeFile"><el-button class="file_upload"type="default"></el-button><label for="file"class="file-btn h-icon-folder"></label>
</el-upload>

2. 在on-change方法中处理:

handleChangeFile (file, fileList) {this.isDisabled = falseif (!file) returnvar testmsg = file.name.substring(file.name.lastIndexOf('.') + 1)const isLt2M = file.size / 1024 / 1024 < 50if (testmsg !== 'xls' && testmsg !== 'xlsx' && testmsg !== 'csv') {this.$refs.upload.clearFiles()this.$message({message: '上传文件只能是 .xls、.xlsx、csv格式!',type: 'warning'})return false}if (!isLt2M) {this.$refs.upload.clearFiles()this.$message({message: '上传文件大小不能超过 50MB!',type: 'warning'})return false}this.fileName = file.name
}

3.作为补充, 如果对图片的尺寸有限制也可以实现的(这里只做补充, 此文件中没用到):

// 说明: 这部分代码不是本项目的,扩展
onchange (file) {let isLt = file.size / 1024 < 200 // 判断是否小于200Kbif (!isLt) {this.$message.warning('图片大小不能超过200KB! 请重新上传')this.$refs.upload.clearFiles()this.basicForm.image = ''this.basicForm.imageFile = []} else {this.asyncImgChecked(file).then(data => {if (data) {this.basicForm.image = file.namethis.basicForm.imageFile = file} else {this.basicForm.image = ''this.basicForm.imageFile = []this.$refs.upload.clearFiles()this.$message.warning('图片尺寸不小于64 X 64')}})}
},
// 计算图片尺寸
asyncImgChecked (file) {return new Promise((resolve) => {let reader = new FileReader()reader.readAsDataURL(file.raw) // 必须用file.rawreader.onload = () => { // 让页面中的img标签的src指向读取的路径let img = new Image()img.src = reader.result// console.log(`1当前文件尺寸大小:${img.width}×${img.height}`)if (img.complete) { // 如果存在浏览器缓存中if (img.width < 64 || img.height < 64) {resolve(false)} else {resolve(true)}} else {img.onload = () => {if (img.width < 64 || img.height < 64) {resolve(false)} else {resolve(true)}}}}})
}

el-upload限制文件大小(图片尺寸)相关推荐

  1. element-upload 自定义上传、限制文件大小、格式以及图片尺寸

    文章目录 element-upload 自定义上传.限制文件大小.格式以及图片尺寸 1. 前言 2. 完整实现示例 element-upload 自定义上传.限制文件大小.格式以及图片尺寸 1. 前言 ...

  2. 改变图片尺寸,文件大小,分辨率300dpi的方法

    一.改变图片尺寸 使用电脑自带的"画图"软件,如下图1所示,点击"重新调整大小":之后可点击像素,修改图片尺寸大小,如图2所示. 图1 画图软件截图 图2 二. ...

  3. jquery file upload 限制上传文件的格式、大小或图片尺寸

    限制文件格式.大小 $("#head").fileupload({url: "/front/user/uploadHead",dataType: 'json', ...

  4. C#减少图片文件大小和尺寸(转)

    有一个员工管理,需要在数据库字段中保存员工的照片,但已有的照片非常巨大,1024*768, 2M左右,这么大的数据存入数据库,不管是对管理或是传输都是问题,而实际上登记照只要很小就行了,下面进行减肥( ...

  5. python怎样批量修改文件大小_python:批量修改文件名批量修改图片尺寸

    功能:批量修改图片尺寸 图像的几何变换,如缩放.旋转和翻转等,在图像处理中扮演着重要的角色,python中的Image类分别提供了这些操作的接口函数,下面进行逐一介绍. 1.图像的缩放 图像的缩放使用 ...

  6. 使用el upload标签上传文件的几种常见使用场景(前台+后台)

    前言:本篇博客主要介绍ElementUI中el upload上传控件的使用,包含前后台代码. 文章目录 一.总体代码 二.使用场景 1.添加 2.修改 3.单独上传到服务器 一.总体代码 1.前端控件 ...

  7. python更改图片存储大小_python不改变图片尺寸压缩到指定大小

    python不改变图片尺寸压缩到指定大小 import base64 import io import os from PIL import Image from PIL import ImageFi ...

  8. Python 图片尺寸缩放的4种方式

    微信公众号" 程序猿刘先森", 共同学习- https://darylliu.github.io/archives/9c4cfe08.html 最近由于网站对图片尺寸的需要,用py ...

  9. 照片整理工具(日历相册, 重复文件清理, 手机照片同步, 图片尺寸缩减)

    最近整理了多年以来积攒的照片,过程中没找到很合适的工具来解决需求,便自己动手写了一番.后面把总结的方法融入到代码中,添加了通过命令行运行的脚本,分享出来希望也能解决你的问题. GitHub: http ...

  10. 饿了么el-upload上传图片限制图片尺寸、大小、格式

    饿了么中的Upload组件已经提供了限制用户上传的图片格式和大小的例子(https://element.eleme.io/#/zh-CN/component/upload),在此又新加图片的尺寸 &l ...

最新文章

  1. Nginx 虚拟主机 VirtualHost 配置
  2. 推荐 10 个实用型的热门开源项目,开发效率又能提升了!
  3. hdu 1280用hash解决。。
  4. 利用Spring MVC 上传图片文件
  5. 视频 | 为何我对小鹏NGP“半信半疑”
  6. asp.net的decimal保留两位小数
  7. button html ios,iOS实现UIButton图标和文字上下布局
  8. python微信机器人制作教程+源码
  9. java关键字const_java基础知识(三)java关键字
  10. 架构之美 | 按图索骥,就能做好架构图!
  11. PPT母版和PPT模板
  12. 无火花工具的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  13. p图软件pⅰc_pic修图软件下载-pic修图 安卓版v16.4.52-PC6安卓网
  14. flash 水墨表现(转)
  15. anki最新开发文档(2.1)
  16. 速达财务软件未能连接服务器,速达3000财务软件使用常见问题
  17. 墨水染色之广度优先搜索(C语言实现)
  18. 服务器数据丢包是什么原因?服务器丢包怎么解决?
  19. cucumber java hooks_Cucumber入门之_HooksBackground
  20. 【LDA】动手实现LDA

热门文章

  1. Oracle日期类型转long类型
  2. 计算机桌面图标有阴影,桌面图标有阴影怎么去掉?教你轻松解决
  3. 黄金分割法 c语言程序,优化程序-黄金分割法C语言程序设计
  4. 百度地图坐标拾取系统自定义页面
  5. 大厂正在「去大厂化」
  6. Flink Back Pressure(背压)实现与监控
  7. (数位dp) 算法竞赛入门到进阶 书本题集
  8. 【转】slideUp() 和slideDown() 如何解决反复抖动的问题
  9. 数显之家快讯:【SHIO世硕心语】智慧城市时代下的智慧标识设计初探
  10. 如何官方的发布通知(互亿无线)?