vue elementui 上传图片限制格式、大小和尺寸
需求:
上传图片的格式为:.jpg、.jpeg、.png
大小为:1M以内
尺寸为:400*400
代码实现:
直接拿的elementui官网的html代码,加了一句:accept="image/jpg,image/jpeg,image/png"
<el-uploadclass="avatar-uploader"action="https://jsonplaceholder.typicode.com/posts/"accept="image/jpg,image/jpeg,image/png":show-file-list="false":on-success="handleAvatarSuccess":before-upload="beforeAvatarUpload"><img v-if="imageUrl" :src="data:imageUrl" class="avatar"><i v-else class="el-icon-plus avatar-uploader-icon"></i>
</el-upload>
下面是写在methods里的js代码:
// 限制图片尺寸limitFileWH(E_width, E_height, file) {const _this = thislet imgWidth = ''let imgHight = ''const isSize = new Promise(function(resolve, reject) {const width = E_widthconst height = E_heightconst _URL = window.URL || window.webkitURLconst img = new Image()img.onload = function() {imgWidth = img.widthimgHight = img.heightconst valid = img.width === width && img.height === heightvalid ? resolve() : reject()}img.src = _URL.createObjectURL(file)}).then(() => {return true}, () => {_this.$message.warning({message: '上传图片的尺寸应为' + E_width + '*' + E_height + ',当前上传图片的尺寸为:' + imgWidth + '*' + imgHight,btn: false})return false})return isSize},// 图片上传之前的判断handleBeforeUpload(file) {return new Promise((resolve, reject) => {const suffix = file.type === 'image/jpg' || file.type === 'image/png' || file.type === 'image/jpeg'const isLt1M = file.size / 1024 / 1024 < 1if (!suffix) {this.$message.error('只能上传图片!')return reject(false)}if (!isLt1M) {this.$message.error('上传图片大小不能超过 1MB!')return reject(false)}// 调用[限制图片尺寸]函数this.limitFileWH(400, 400, file).then((res) => {file.isFlag = resif (file.isFlag) {return resolve(true)} else {return reject(false)}})})},
// 上传成功的回调handleAvatarSuccess(res, file) {this.imageUrl = URL.createObjectURL(file.raw);},
上传的图片不符合需求的会提示错误信息,停止上传。
vue elementui 上传图片限制格式、大小和尺寸相关推荐
- Vue elementui 上传前获取图片宽度尺寸和大小
Vue elementui 上传前获取图片宽度尺寸和大小 项目中用到elementui上传组件,但是on-change钩子函数中file参数只能拿到文件名字和大小, 如果是图片就拿不到图片的宽高,不符 ...
- vue+elementUI上传图片
vue+elementUI上传图片笔记总结 有裁剪框 上传图片组件: <template slot="iconForm"><el-uploadclass=&quo ...
- 前端vue+element-ui上传图片至七牛,并返回外链URL至后台
前端vue+element-ui上传图片至七牛,并返回外链URL至后台 上传文件到七牛云 代码 2019/08/12 上传文件到七牛云 注册登陆到七牛云,需要认证信息才能创建个人存储空间; 注册等步骤 ...
- Vue+Element-UI 上传图片,打开相机,相册
Vue+Element-UI 上传图片,打开相机,相册 Element-UI中提供的Upload组件,是用来上传文件用的,并没有单独的纯用来上传图片的组件,所以,在部分浏览器(手机)中,打开后会发现是 ...
- Vue Element-ui上传图片踩坑
Element-ui上传图片踩坑 使用Element-ui组件上传图片时,使用自带的action发起上传请求时碰到400错误 错误代码 <el-uploadclass="upload- ...
- Element UI upload 上传图片校验格式 || 大小 || 比例
beforeAvatarUpload(file) {// 校验图片格式(也可直接用 accept 属性限制如:accept="image/png,image/jpg,image/jpeg,i ...
- 5分钟学会js上传图片校验图片格式、大小、尺寸宽高
js上传图片校验图片格式.大小.尺寸宽高 一.前言 js上传图片校验图片格式.大小.尺寸宽高. 在此记录下,分享给大家. 二.代码 <input type=" ...
- 基于vue element-ui 封装上传图片组件 功能:上传,删除,预览,上传图片水印,拖拽排序,上传进度条等
学习目标: 我们在开发后台时肯定避免不了上传图片的功能 例如: 上传图片回显 上传完成 : 预览查看 , 删除等 如果是图片列表,还可能让你拖动图片排序 有的后台项目可能要给图片添加水印,添加标记 有 ...
- 一般网站上传图片的大小是多少?网站图片上传格式大小建议 附带简单修图方法
一般网站上传图片的大小是多少呢?尚网汇智给您列一下网站图片上传格式大小建议: 首先,上传图片格式: 通常图片以JPG图片居多,JPG格式的图片较小,图片也比较柔和 不过特殊情况就要用特殊格式的图片了 ...
最新文章
- 汇编学习笔记(4)-伪指令(MASM)
- java修改另存excel_Word文档导入Excel总变形,调整格式你花了1小时,同事三步就搞定...
- PAT甲级1054 map的使用
- VS2010 + OpenCL 1.1 @ Windows 7 + AMD HD6870
- Oracle控制文件操作
- iOS使用Instruments的工具
- 【谈天说地】诋毁中华文化的三大谎言(之三)
- 联想笔记本重装系统,联想电脑安装系统
- matlab函数表达式里分号_matlab中分号
- Effective java 读书笔记
- 一文详解 TCP/IP 协议
- Z3求解器简介及环境搭建
- ONF解决方案与合作伙伴副主席Aseem Parikh:CORD的社区增长概况及全球发展趋势
- python猜大小程序_「每日一练」巧用python实现猜大小的游戏
- php实训报告摘要部分怎么写,毕业论文的摘要部分怎么写(附摘要范文)
- 让站长崩溃的骚操作,你中过招吗?
- Latex之添加删除线
- DVD管理系统修改版
- 计算机毕业设计ssm大学生比赛信息管理系统38iiq系统+程序+源码+lw+远程部署
- 四狂神战记2部分攻略
热门文章
- 【Java面试题】JavaSE基础之Java面向对象
- 【牛客网题目详解】Q-前天是哪一天
- matlab三相功率测量不对,测量信号的功率
- MATLAB Simulink
- MathWorks 中国
- 把苹果全家桶用于VR全身追踪是什么体验
- JSP的优势和劣势 与php的比较
- 将一个“1234”的字符串转化为1234整形
- 【报错记录】AttributeError: ‘xxx‘ object has no attribute ‘module‘
- Android完美支持MathML显示公式方程
- 开视频聊天室怎么赚钱 如何利用聊天室赚钱
- C4D+柔软建筑+人文关怀?听听SCI-Arc研究生怎么说