当前位置: 首页 > news >正文

ElementUI el-form表单多层数组的校验

问题描述

提示:这里描述项目中遇到的问题:

ElementUI el-form表单多层数组的校验


页面效果:

在这里插入图片描述


数据结构:

addform: {code: '',type: '',value: '',state: 1,remark: '',fieldList: [{fieldCode: '',resolverEntities: [{resolverType: '', resolverConfigOne: '', resolverConfigTwo: '' 
}]}]}

HTML:

<el-form ref="addform" :rules="formRules" :model="addform" size="small"><el-form-item label="标识:" prop="code"><el-inputv-model="addform.code"placeholder="请输入"autocomplete="off"clearable/></el-form-item><el-row><el-col :span="8"><el-form-item label="类型:" prop="type"><el-select v-model="addform.type" placeholder="请选择"><el-optionv-for="item in typeOptions":key="item.code":label="item.name":value="item.code"></el-option></el-select></el-form-item></el-col><el-col :span="16"><el-form-item class="state-box" label="状态:" prop="state"><el-switchv-model="addform.state"active-color="#13ce66"inactive-color="#ff4949":active-value="1":inactive-value="2"></el-switch></el-form-item></el-col></el-row><div class="custom-rule-box"><p>自定义解码字段</p><ul><liv-for="(customRuleItem, customRuleIndex) in addform.fieldList":key="customRuleIndex"><el-form-itemclass="field-name"label="字段名:":prop="`fieldList.${customRuleIndex}.fieldCode`":rules="formRules.fieldCode"><el-inputv-model="addform.fieldList[customRuleIndex].fieldCode"placeholder="请输入"autocomplete="off"clearable/></el-form-item><divclass="decode-rule-list"v-for="(decodeRuleItem, decodeRuleIndex) in customRuleItem.resolverEntities":key="decodeRuleIndex"><el-row :gutter="24"><el-col :span="5"><el-form-itemlabel="":prop="`fieldList.${customRuleIndex}.resolverEntities.${decodeRuleIndex}.resolverType`":rules="formRules.resolverType"><el-selectv-model="decodeRuleItem.resolverType"placeholder="请选择"><el-optionv-for="item in decodeRuleOptions":key="item.code":label="item.name":value="item.code"></el-option></el-select></el-form-item></el-col><template v-if="decodeRuleItem.resolverType"><el-col :span="8"><el-form-item:label="computedResolverConfigOneLabel(decodeRuleItem.resolverType)":prop="`fieldList.${customRuleIndex}.resolverEntities.${decodeRuleIndex}.resolverConfigOne`":rules="formRules.resolverConfigOne"><el-inputv-model="decodeRuleItem.resolverConfigOne"placeholder="请输入"autocomplete="off"clearable/></el-form-item></el-col><el-col :span="8"><el-form-item:label="computedResolverConfigTwoLabel(decodeRuleItem.resolverType)":prop="`fieldList.${customRuleIndex}.resolverEntities.${decodeRuleIndex}.resolverConfigTwo`":rules="formRules.resolverConfigTwo"><el-inputv-model="decodeRuleItem.resolverConfigTwo"placeholder="请输入"autocomplete="off"clearable/></el-form-item></el-col></template><el-col :span="3" class="decode-rule-operate"><imgv-if="customRuleItem.resolverEntities.length > 1"src="@/assets/images/common/delete.png"alt=""class="deleteImg"@click="handleDeleteResolver(customRuleIndex, decodeRuleIndex)"/><imgsrc="@/assets/images/common/add.png"alt=""class="addImg"@click="handleAddResolver(customRuleIndex, decodeRuleIndex)"/></el-col></el-row></div></li></ul><div class="add-btn"><imgsrc="@/assets/images/common/add.png"alt=""class="deleteImg"@click="handleAddField"/>新增</div></div></el-form>

总结:

重点在于 el-form-item prop绑定,参考如下示例

:prop=“fieldList.${customRuleIndex}.fieldCode

:prop=“fieldList.${customRuleIndex}.resolverEntities.${decodeRuleIndex}.resolverConfigOne


http://www.lryc.cn/news/474413.html

相关文章:

  • 常见的向量范数、矩阵范数和对偶范数-对偶范数详细证明过程
  • Android 滴滴面经
  • angular登录按钮输入框监听
  • 硅谷甄选(10)用户管理
  • Unity XR Interaction Toolkit 开发教程(2):导入 SDK【3.0 以上版本】
  • element-plus校验单个form对象合法性
  • Linux常见命令合集
  • __init__.py __all__和 __name__的作用及其用法
  • js操作数组的方法 / js操作字符串的方法
  • Docker 部署RocketMQ
  • Linux(Cent OS)环境离线安装mkfontscale mkfontdir命令 解决java项目在linux系统下无法获取中文字体问题
  • 计算堆栈中的剩余数字
  • 笔记:mysql升级 5.6至5.7
  • 前端的全栈Deno篇(五):与前端保持一致的模块化方案,摆脱ERR_REQUIRE_ESM和mjs、cjs等模块混乱带来的心智负担
  • 与外部公司做数据交互时,需要注意哪些事情?
  • 基于hive分析Flask为后端框架echarts为前端框架的招聘网站可视化大屏项目
  • Ansible 部署应用
  • 使用Docker Swarm进行集群管理
  • 基于树莓派的安保巡逻机器人--(一、快速人脸录入与精准人脸识别)
  • 中间件的应用
  • 真题与解析 202206二级 青少年软件编程(Python)考级
  • ChatGPT新体验:AI搜索功能与订阅支付指南
  • 【植物识别】Python+深度学习+人工智能+CNN卷积神经网络+算法模型训练+TensorFlow
  • 快讯,Flutter PC 多窗口新进展,已在 Ubuntu/Canonical 展示
  • BigDecimal 详解
  • ESP-HaloPanel:用 ESP32-C2 打造超低成本智能家居面板
  • CSS3新增盒子属性(三)
  • Manus在虚拟现实仿真模拟中的应用案例分享
  • 大数据-201 数据挖掘 机器学习理论 - 决策树 局部最优 剪枝 分裂 二叉分裂
  • Scala 的trait