js图片压缩使用Compressorjs库

455 阅读1分钟

js图片压缩使用Compressorjs库

import Compressorjs from 'compressorjs';
 /**
     * 上传前事件
     * @param {*} file 传入的文件
     */
    onBeforeRead (file) {
     return new Promise((resolve, reject) => {
       new Compressorjs(file, {
         //压缩质量, 0-1
        //  quality: 0.6,
        //  //转换的类型,默认为 image/png
        // //  convertTypes: ['image/jpeg','image/png'],
        //  convertTypes: 'image/png',
        //  //需要压缩的起始大小,默认10M, 10 * 1000 * 1000
        //  convertSize: 10000000,
         //压缩成功后处理
          strict: true,
          checkOrientation: true,
          retainExif: false,
          // maxWidth: undefined,
          // maxHeight: undefined,
          minWidth: 0,
          minHeight: 0,
          // width: undefined,
          // height: undefined,
          resize: 'none',
          quality: 0.6,
          mimeType: '',
          convertTypes: 'image/png',
          convertSize: 5000000,
         success(result) {
           resolve(result);
         },
         error(err) {
           console.log(err.message);
           reject()
         },
       });
     });
   }

在vue中使用将这个事件调用即可