vue elementUI form组件动态添加el-form-item并且动态添加rules必填项校验方法

vueelementUI form组件动态添加el-form-item并且动态添加rules必填项校验方法
先看一下效果图(想在表单里动态的增删 form-item,然后添加rules,校验其必填项;

):

复制代码
<div v-for="(item, index) in form.labels" :key="index" class="label">
    <el-form-item label="名称:"
    :prop="'labels.' + index + '.name'"
    :rules="{
          required: true, message: '请输入', trigger: 'blur'
    }"
    class="middleInput">
      <el-input v-model.trim="item.name" maxlength="30" placeholder="请输入"></el-input>
      <i class="el-icon-circle-plus-outline icon" v-if="(index === (form.labels.length - 1))" @click.prevent="addKey(item)"></i>
      <i class="el-icon-remove-outline icon" v-if="(form.labels.length > 1)" @click.prevent="removeKey(item, index)"></i>
    </el-form-item>
    <el-form-item label="值:"
    :prop="'labels.' + index + '.value'"
    :rules="{
          required: true, message: '请输入', trigger: 'blur'
    }"
    class="middleInput">
      <el-input maxlength="100" show-word-limit type="textarea" :rows="3" v-model.trim="item.value" placeholder="请输入"></el-input>
    </el-form-item>
 </div>


//data:
form: {
    labels: [{
    	name: '',
    	value: ''
    }]
},

// methods:
addKey (item) {
  this.form.labels.push({
    name: '',
    value: ''
  })
},
removeKey (item, index) {
  this.form.labels.splice(index, 1)
},

注意

核心代码:

复制代码
:prop="'labels.' + index + '.name'"
:rules="{
       required: true, message: '请输入', trigger: 'blur'
 }"
  • prop里的值有格式要求,以本demo为例:"表单属性数组key名 + '.' + 索引值 + '.' + 数组里对象的key名";
  • rules里填写校验不成功触发条件和提示语;

参考:vue elementUI form组件动态添加el-form-item rules且支持添加自定义校验方法-CSDN博客

相关推荐
玲小珑2 分钟前
Auto.js 入门指南(七)定时任务调度
android·前端
橘黄的猫2 分钟前
深入解析 import.meta.url:与 new URL() 的关系及 Vite 中的 base 路径影响
前端·vite
海的诗篇_7 分钟前
前端开发面试题总结-HTML篇
前端·面试·html
Sun_light13 分钟前
用原生 HTML/CSS/JS 手把手带你实现一个美观的 To-Do List 待办清单小Demo
前端·css·html
用户214118326360215 分钟前
dify案例分享--告别手工录入!Dify 工作流批量识别电子发票,5分钟生成Excel表格
前端·人工智能
SweetRetry16 分钟前
前端依赖管理实战:从臃肿到精简的优化之路
前端·人工智能
LaoZhangAI17 分钟前
Claude Code完全指南:2025年最强AI编程助手深度评测
前端·后端
卸任19 分钟前
Electron自制翻译工具:增加中英互译
前端·react.js·electron
LaoZhangAI21 分钟前
FLUX.1 Kontext vs GPT-4o图像编辑全面对比:2025年最全评测指南
前端·后端
LaoZhangAI22 分钟前
2025最全Supabase MCP使用指南:一键连接AI助手与数据库【实战教程】
前端·javascript·后端