element ui 上传图片之前判断当前图片的长宽、大小和文件格式

if (file.type.indexOf("image/") == -1) {

        this.msgError("文件格式错误,请上传图片类型,如:JPG,PNG后缀的文件。");

        return false;

      }

      let data = window.URL.createObjectURL(new Blob([file]));

      this.filename = file;

      this.option.img = data;

      const isPdf = file.type === "application/pdf"; //  判断文件格式

      const isLt1M = file.size / 1024 / 1024 < 1; //  判断文件大小

      // if (!isPdf) {

      //   this.$message.error("上传文件只能是 pdf 格式!");

      // }

      if (!isLt1M) {

        this.$message.error("上传文件大小不能超过 1MB!");

        return false;

      }

      const isSize = new Promise(function (resolve, reject) {

        //  判断图片格式

        let width = 686;

        let height = 274;

        let _URL = window.URL || window.webkitURL;

        let img = new Image();

        img.onload = function () {

          let valid = img.width == width && img.height == height;

          valid ? resolve() : reject();

        };

        img.src = _URL.createObjectURL(file);

      }).then(

        () => {

          return file;

        },

        () => {

          this.$confirm(

            "上传的活动首页图宽*高必须是等于686*274! 是否截取?",

            "截取首页图",

            {

              confirmButtonText: "确定",

              cancelButtonText: "取消",

              type: "warning",

            }

          )

            .then(() => {

              this.dialogVisible = true;

            })

            .catch(function () {});

          return Promise.reject();

        }

      );

      return isLt1M && isSize;

你可能感兴趣的:(element ui 上传图片之前判断当前图片的长宽、大小和文件格式)