上传图片分辨率,像素大小限制

原文 , 参考2

    handleBeforeCommon(file, w,h,msg,size=500){
        const isLtm500K = file.size / 1024 > size
        const isType = file.type === 'image/jpeg' || file.type === 'image/jpg' || file.type === 'image/png' || file.type === 'image/gif'
        if (!isType) {
            this.$Message.error({
                content: '请选择格式为png、jpg、gif的图片'
            })
            return false
        }
        if (isLtm500K) {
             this.$Message.error({
                content: '请选择小于500KB大小的图片'
            })
            return false
        }
        const _URL = window.URL || window.webkitURL
        const isSize = new Promise((resolve,reject) => { // px
            const image = new Image()
            image.onload = function() {
                this.width >w || this.height > h ? reject() : resolve()
            }
            image.src = _URL.createObjectURL(file)
        }).then(
            ()=>{
            return file
            },
            ()=>{
                this.$Message.error({
                    content: msg
                })
            return Promise.reject()
        })
        return isSize
    },

  

posted @ 2023-06-28 13:42  everseven  阅读(181)  评论(0)    收藏  举报