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">
相关推荐
JavaEdge在掘金7 分钟前
上线卡半夜、出 bug 只能硬扛?前端自动化部署 + 秒级回滚方案来了
前端
方也_arkling11 分钟前
【八股】JS中的事件循环
开发语言·前端·javascript·ecmascript
颜酱29 分钟前
从经典问题入手,吃透动态规划核心(DP五部曲实战)
前端·javascript·算法
深盾科技1 小时前
C++ 中 std::error_code 的应用与实践
java·前端·c++
Jagger_1 小时前
我的AI驯服记:从7640px大屏的惨败,到总结出一套高效协作SOP
前端
hy35281 小时前
VUE 踩坑合集
前端·javascript·vue.js
Franciz小测测1 小时前
Gemini 网页端自定义教程:利用 Stylus 强制开启宽屏显示
前端·css·stylus
彭不懂赶紧问1 小时前
鸿蒙NEXT开发浅进阶到精通15:从零搭建Navigation路由框架
前端·笔记·harmonyos·鸿蒙
xkxnq2 小时前
第一阶段:Vue 基础入门(第 2 天)
前端·javascript·vue.js