element upload限制图片上传尺寸大小

  1. 首先使用 Upload 上传组件
    element upload限制图片上传尺寸大小_第1张图片

  2. 使用 before-upload

    before-upload:上传文件之前的钩子,参数为上传的文件,若返回 false 或者返回 Promise 且被 reject,则停止上传
    

    element upload限制图片上传尺寸大小_第2张图片

  3. 具体代码

		// 图片校验 大小
        async beforeAvatarUpload(file) {
            let res = await this.validImageSize(file, 800, 800)
            if(!res){
                this.$message.error('图片尺寸只能为 800*800')
                return res
            }
      	},

		/**
		   * @description: 图片尺寸校验
		   * @param {Object}} file 文件对象
		   * @param {String} imgWidth 图片校验宽度 
		   * @param {String} imgHeight 图片校验高度 
		   * @return {Boolean} true:校验通过  false:校验不通过
		*/
		  // 图片尺寸校验
		  async validImageSize(file, imgWidth, imgHeight) {
		    let img = new Image()
		    img.src = URL.createObjectURL(file)
		    let { w, h } = await new Promise((resolve, reject) => {
		      img.onload = () => {
		        let { width: w, height: h } = img;
		        resolve({ w, h })
		      }
		    })
		    if (w * imgHeight !== imgWidth * h) {
		      return false
		    }
		    return true
		  }

你可能感兴趣的:(element-ui)