1.下载插件npm i image-conversion --save
2.页面引用:import * as imageConversion from 'image-conversion
3.页面
<el-upload
action="https://jsonplaceholder.typicode.com/posts/"
list-type="picture-card"
:on-preview="handlePictureCardPreview"
:before-upload="beforeRead"
:file-list="fileList"
:on-remove="handleRemove">
<i class="el-icon-plus"></i>
</el-upload>
4.js文件
beforeRead(file) {
console.log(file)
// 上传之前校验
return new Promise((resolve, reject) => {
console.log('压缩前', file) // 压缩到400KB,大于400KB的图片都会进行压缩,此值可自行定义
imageConversion.compressAccurately(file, 400).then(res => { // console.log(res)
res = new File([res], file.name, { type: res.type, lastModified: Date.now() })
console.log('压缩后', res)
resolve(res)
})
})
},