Element 表单验证项v-model绑定值为对象下嵌套的子对象的属性时无法验证

问题:input绑定的值是对象 obj 下面的子对象 obj.id 时,绑定的rules校验不生效。会出现已经输入值但还会提示id必填的情况。正常情况下绑定校验没有问题

复制代码
<el-form ref="dataForm" :rules="rules" :model="temp">
      <el-form-item label="编号:" prop="id" >
        <el-input v-model="temp.obj.id" />
      </el-form-item>
      <el-form-item label="姓名:" prop="name" >
        <el-input v-model="temp.name" />
      </el-form-item>
</el-form>


temp: {
  obj: { id: '', pass: '' },
  name: '',
},

rules: {
  id: [
    { required: true, message: 'id必填', trigger: 'change' },
  ],
  name: [
    { required: true, message: 'name必填择', trigger: 'change' },
  ],

解决方案1 :在规则定义与绑定时,prop 绑定的规则结构 与rules下的数据结构 'obj.id' 一致

复制代码
<el-form ref="dataForm" :rules="rules" :model="temp">
    <el-form-item label="编号:" prop="obj.id" >
      <el-input v-model="temp.obj.id" :disabled="true" />
    </el-form-item>
</el-form>

rules: {
  'obj.id': [
    { required: true, message: 'id必填', trigger: 'change' },
  ],
}

解决方案2:表单绑定的数据对象修改成对象的子对象

复制代码
<el-form ref="dataForm" :rules="rules" :model="temp.obj">
相关推荐
excel1 分钟前
🧩 深入剖析 Vue 编译器中的 TypeScript 类型系统(第五篇)
前端
excel7 分钟前
🧩 深入剖析 Vue 编译器中的 TypeScript 类型系统(第六篇 · 终篇)
前端
不吃香菜的猪10 分钟前
el-upload实现文件上传预览
前端·javascript·vue.js
excel15 分钟前
🧩 深入剖析 Vue 编译器中的 TypeScript 类型系统(第四篇)
前端
excel20 分钟前
🧩 深入剖析 Vue 编译器中的 TypeScript 类型系统(第二篇)
前端
老夫的码又出BUG了23 分钟前
分布式Web应用场景下存在的Session问题
前端·分布式·后端
excel24 分钟前
🧩 深入剖析 Vue 编译器中的 TypeScript 类型系统(第三篇)
前端
excel28 分钟前
🧩 深入剖析 Vue 编译器中的 TypeScript 类型系统(第一篇)
前端
excel30 分钟前
深度解析 Vue SFC 编译流程中的 processNormalScript 实现原理
前端
excel35 分钟前
Vue SFC 编译器源码解析:processPropsDestructure 与 transformDestructuredProps
前端