废话不多说,直接上代码
import ImagesQuicklyCompress from "images-quickly-compress";
const imageCompress = new ImagesQuicklyCompress({
mode: "pixel", //根据固定宽度压缩
num: 1e6,
size: "2000kb", //图片大小超过500k压缩率比较低b执行压缩
imageType: "image/png", // jpeg格式会导致png转jpeg带上黑色的背景
quality: 0.8,
orientation: false
});
imageCompress.compressor([option.file]).then(res => {
// console.log("压缩结果:", res); //返回一个blod数组
const blobArr = res;
blobArr.forEach(blod => {
const params = new FormData();
params.append("file", blod);
params.append("fileName", option.file.name);
getUpload(this.type, params)
.then(res => {
this.imgUpdata = res[0];
option.onSuccess();
})
.catch(() => {
option.onError();
});
});
});