vue+element 压缩上传图片

安装image-conversion包 https://github.com/WangYuLue/image-conversion

<el-upload
    class="upload-demo"
    action="uploadPath"
    :on-preview="handlePreview"
    :on-remove="handleRemove"
    :before-upload="beforeUpload"
    list-type="picture">
    <el-button size="small" type="primary">点击上传</el-button>
    <div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div>
</el-upload>
import * as imageConversion from 'image-conversion'

 methods: {
	// 不考虑图片长宽,只考虑图片大小的情况,图片超过4M就压缩
	beforeUpload (file) {
	     return new Promise((resolve, reject) => {
	         let isLt2M = file.size / 1024 / 1024 < 4 // 判定图片大小是否小于4MB
	         if (isLt2M) {
	             resolve(file)
	         }
	         console.log('file size:', file) // 压缩到400KB,这里的400就是要压缩的大小,可自定义
	         imageConversion.compressAccurately(file, 400).then(res => { //
	             console.log(res)
	             resolve(res)
	         })
	     })
	 },
 }
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值