el-upload 压缩图片上传
时间: 2023-08-22 17:14:10 浏览: 461
【JavaScript源代码】vue el-upload上传文件的示例代码.docx
el-upload组件可以通过before-upload事件对用户上传的图片文件进行压缩处理。在beforeUpload事件中,可以使用image-conversion库来进行图片压缩。具体的代码如下所示:
```javascript
beforeUpload(file) {
const imageConversion = require("image-conversion");
console.log('压缩前:', (file.size / 1024) + "K");
this.loading = true;
imageConversion.compressAccurately(file, 100).then(res => {
this.loading = false;
console.log('压缩后:', (res.size / 1024) + "K");
console.log(res);
})
}
```
在el-upload组件中,可以通过设置action属性来指定上传的接口地址,通过设置show-file-list属性为false来隐藏文件列表。同时,可以在el-upload组件内部添加一个el-button组件作为选择图片的按钮。完整的el-upload代码如下所示:
```html
<el-upload action="#" :show-file-list="false" :before-upload="beforeUpload" accept=".jpg,.jpeg,.png">
<el-button size="small">选择图片</el-button>
</el-upload>
```
这样,当用户选择图片后,beforeUpload事件会被触发,图片会被压缩处理后再进行上传。
阅读全文