图片上传前判断
// 校验上传图片
beforeUploadFile(file) {
let extension = file.name.substring(file.name.lastIndexOf('.') + 1)
let size = file.size / 1024 / 1024
if (extension !== 'jpg' && extension !== 'png') {
this.$message.warning('只能上传后缀是.jpg和.png的文件')
return false
}
if (size > 2) {
this.$message.warning('文件大小不得超过2M')
return false
}
// 判断当前的图片尺寸
const isSize = new Promise(function (resolve, reject) {
let width = 308
let height = 196
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)
console.log(img.src)
}).then(
() => {
return file
},
() => {
this.$message({
message: '上传图片尺寸仅限于308*196px,请重新选择图片!',
type: 'warning',
})
return Promise.reject()
return false //必须加上return false; 才能阻止
}
)
return isSize
},