element upload图片上传尺寸限制

2019-09-28  本文已影响0人  smallzip

图片比例限制

使用的是element的图片上传功能,需要对图片 比例 和 尺寸 进行校验.

封装以下方法.

// imgSize.js
//  图片尺寸限制
const imgSize = (file) => {
  return new Promise((resolve, reject) => {
    let url = window.URL || window.webkitURL;
    let img = new Image();
    img.onload = function () {
      // 图片比例校验
      let valid = img.width / img.height === 1.875;
      valid ? resolve() : reject();
    };
    img.src = url.createObjectURL(file);
  }).then(
    () => {
      return file;
    },
    () => {
      return Promise.reject();
    }
  );
}

export default imgSize;

使用

/** 导入封装的方法 **/
import imgSize from "@/utils/imgSize";



methods:{
  // 图片上传之前
  beforeAvatarUpload(file) {
      const isSize = imgSize(file);  // 这里使用,传入file值
      const isLt2M = file.size / 1024 / 1024 < 2;
      if (!isLt2M) {
        this.$message.error("上传图片大小不得超过2MB!");
      }
       if (!isSize) {
        this.$message.error("上传的图片建议比例750:400");
       }
      //  校验不通过则不上传文件
      return isLt2M && isLt2M;
    },
}
 
上一篇下一篇

猜你喜欢

热点阅读