<template>
<el-form ref="form" :model="form" :rules="rules">
<el-form-item label="封面" prop="cover">
<el-upload class="upload-demo" v-model="form.cover">
<el-button size="small" type="primary">点击上传</el-button>
</el-upload>
</el-form-item>
</el-form>
</template>
<script>
export default {
name: 'Demo',
data() {
const validateLogo = (rule, value, callback) => {
if (!this.form.cover) {
callback(new Error('请上传图片'))
} else {
callback()
}
}
return {
form: {
cover: null,
},
rules: {
cover: [{ required: true, validator: validateLogo, trigger: 'change' }],
},
}
},
methods: {
upload(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
// 验证完后
}
})
},
},
}
</script>