zoukankan      html  css  js  c++  java
  • element-ui upload 上传图片之前压缩

    1、安装模块 image-conversion

    npm install --save image-conversion

    2、在utils/utils文件封装全局方法

    import * as imageConversion from 'image-conversion';
    /**
     * 压缩图片
     * inputFile :file
     * toSize : 想要压缩的大小
     * */
    export async function compressAccurately(inputFile, toSize) {
      const resAvatarBlob = await imageConversion.compressAccurately(inputFile, toSize);
      const resAvatarFile = new window.File(
        [resAvatarBlob],
        inputFile.name,
        { type: inputFile.type },
      );
      resAvatarFile.uid = inputFile.uid
      return resAvatarFile;
    }

    3、将方法绑定到全局/main.js

    import * as utils from '@/utils/utils'
    Vue.prototype.utils = utils;

    4、使用

    /** 图片上传之前的校验  */
          async beforeImgUpload(file) {
            // const resAvatarBlob = await imageConversion.compressAccurately(file, 400);
            // let resAvatarFile = new window.File(
            //   [resAvatarBlob],
            //   file.name,
            //   { type: file.type },
            // );
            //
            // resAvatarFile.uid = file.uid
            // return resAvatarFile;
            return this.utils.compressAccurately(file,600)
          },
  • 相关阅读:
    Lucene
    SQL优化以及索引
    Mysql优化
    RocketMQ
    RocketMQ
    Session共享
    Linux安装Nginx
    初识nginx
    跨域,防止表单重复提交
    HttpClient案例
  • 原文地址:https://www.cnblogs.com/onlywu/p/14721831.html
Copyright © 2011-2022 走看看