[原文](https://zhuanlan.zhihu.com/p/390466860)
因为在我们自定义的组件内部没有触发el.form.blur和el.form.change这两个事件,所以想要使用 el-form, el-form-item 组件的表单校验功能,组件内部必须要用包裹它的el-form-item组件$emit el.form.blur和el.form.change。
实际应用如下 (blur 和 change 事件可根据需求选择使用)
<template>
<el-form :model="formData" :rule="rules" ref="formRef">
<el-form-item label="内容" prop="inputValue" ref="inputValueRef"> <!-- 添加ref, 用来调用$emit -->
<my-input v-model="formData.inputValue" @blur="$refs.inputValueRef.$emit('el.form.blur',$event)" @change="$refs.inputValueRef.$emit('el.form.change',$event)"></my-input>
</el-form-item>
<el-form-item>
<el-button @click="submit">提交</el-button>
</el-form-item>
</el-form>
</template>