想通过Compressorjs
来压缩图片上传,于是写了一个压缩方法,基于Promise:
压缩图片方法:
export function comImg(file) {
return new Promise((resolve, reject) => {
new Compressor(file, {
quality: 0.6,
success(result) {
resolve(result);
},
error(err) {
reject()
},
});
});
}
包装Promise方法
async function syncWrapper() {
try {
const result = await comImg();
console.log('000000000');
return result;
} catch (error) {
console.error(error);
}
}
使用:
handleClick(file) {
let result = this.comp(file);
console.log('1111111');
},
我希望先输出000000000
,再输出1111111
,但结果确实相反的,该如何改进呢?
可以用async,await转为同步