elementui——el-form动态表单props正确写法,如何使用 validateField

2023-10-30

el-form动态表单props正确写法,如何使用 validateField
在这里插入图片描述


      <el-form ref="form" :model="form" label-width="80px">
        <el-form-item label="ID" v-show="!isAdd">
          {{ form.typeId }}
        </el-form-item>
        <el-form-item
          label="名称"
          prop="typeName"
          :rule="[
            { required: true, message: '请输入用户名', trigger: 'blur' },
            { min: 2, max: 20, message: '长度在 2 到 20 个字符', trigger: 'blur' },
          ]"
        >
          <el-row>
            <el-col :span="17">
              <el-input v-model="form.typeName" minlength="1" :disabled="typeNameDisabled"></el-input>
            </el-col>
            <el-col :span="1">&nbsp; </el-col>
            <el-col :span="6">
              <el-button type="text" icon="el-icon-edit" v-show="typeNameDisabled" @click="typeNameDisabled = false"
                >修改</el-button
              >
              <el-button type="primary" size="small" v-show="!typeNameDisabled" @click="handleSaveMetadataType"
                >保存</el-button
              >
              <el-button size="small" v-show="!typeNameDisabled" @click="typeNameDisabled = true">取消</el-button>
            </el-col>
          </el-row>
        </el-form-item>
        <template v-for="(item, index) in form.metadataList">
          <el-row :key="index">
            <el-col :span="8">
              <el-form-item
                :prop="'metadataList.' + index + '.id'"
                :rules="{
                  required: true,
                  message: '请输入该字典名称',
                  trigger: 'blur',
                }"
              >
                <el-input v-model="item.id" placeholder="请输入该字典名称" :disabled="item.disabled"></el-input>
              </el-form-item>
            </el-col>
            <el-col :span="1">&nbsp; </el-col>
            <el-col :span="8">
              <el-form-item
                :prop="'metadataList.' + index + '.name'"
                :rules="{
                  required: true,
                  message: '请输入该字典名称',
                  trigger: 'blur',
                }"
              >
                <el-input v-model="item.name" placeholder="请输入该字典名称" :disabled="item.disabled"></el-input>
              </el-form-item>
            </el-col>
            <el-col :span="1">&nbsp; </el-col>
            <el-col :span="6">
              <el-button
                type="text"
                icon="el-icon-edit"
                @click="form.metadataList[index].disabled = false"
                v-show="item.disabled"
                >修改</el-button
              >
              <el-button type="text" icon="el-icon-delete" @click="delDictData(index)" v-show="item.disabled"
                >删除</el-button
              >
              <el-button type="primary" size="small" @click="saveDictData(index)" v-show="!item.disabled"
                >保存</el-button
              >
              <el-button size="small" @click="form.metadataList[index].disabled = true" v-show="!item.disabled"
                >取消</el-button
              >
            </el-col>
          </el-row>
        </template>
        <el-form-item v-show="!isAdd">
          <el-button style="width:100%" @click="addDictData">
            <i class="el-icon-plus"></i>
            添加字典</el-button
          >
        </el-form-item>
      </el-form>

在这里插入图片描述

// 新增or修改字典种类
    handleSaveMetadataType() {
      this.$refs.form.validateField('typeName', (error) => {
        if (!error) {
          this.isAdd ? this.addMetadataType() : this.editMetadataType()
        } else {
          console.log('校验失败!!')
          return false
        }
      })
    },
   // 保存修改的字典单元数据
    saveDictData(index) {
      this.$refs.form.validateField([`metadataList.${index}.id`, `metadataList.${index}.name`], (error) => {
        debugger
        if (!error) {
          debugger
        } else {
          console.log('校验失败!!')
          return false
        }
      })
    },

注意上面表单是动态添加的!!!!
部分表单校验时注意对应props的写法。调用方法时要把对应index 或 传入整个对象、再根据数组中找到对应对象再精准修改!

this.$refs.form.validateField([`metadataList.${index}.id`, `metadataList.${index}.name`], (error) => {
        if (!error) {
        } else {
        }
      })
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

elementui——el-form动态表单props正确写法,如何使用 validateField 的相关文章

  • Jquery获取选中的复选框

    您好 我想获取页面中选定复选框的列表 实际上我真正需要的是获取复选框旁边的元素的文本 该元素是一个 html 元素 li 代码如下 但它不起作用 这是我当前的 jQuery document ready function target cl
  • createHTMLNotification() 替换

    我创建了一个 Chrome 扩展程序 其中使用createHTMLNotification 在所有内容之上显示一个窗口 然而 从 Chrome 28 开始 谷歌决定放弃createHTMLNotification 完全 为什么 谷歌 为什么
  • 将 Javascript 对象的属性从 string 更改为 int

    我有一个对象数组 每个对象具有三个属性 年份 总计 人均 例子 0 Object per capita 125 8 total 1007 2 year 2009 这些属性是字符串 我想创建一个循环来遍历数组并将它们转换为 int 我尝试了以
  • 如何删除除任何特定 id 之外的元素

    假设有一个父 id 其中包含许多元素 我想删除除一个元素之外的所有元素 ex parent id children not id n remove
  • Jquery 悬停卡

    我在用着http designwithpc com Plugins Hovercard http designwithpc com Plugins Hovercard 但我不知道如何在悬停卡上声明 var 每个工作描述都有自己的 ID 当悬
  • 显示具有多个父代的 D3 树

    我目前有this http bl ocks org mbostock 4339083图已实现 我希望在描述具有多个父节点的子节点时保持结构和可折叠性 有没有办法做到这一点 我研究了力图 但我也想保留一组层次结构 这意味着 1 级的父级可以有
  • 浏览器视口大小(以设备像素为单位)

    Goal 我希望 Flash 能够获得有关浏览器视口宽度和高度 以设备像素为单位 的准确信息初始化 调整大小或浏览器缩放事件时 规格 我需要将 flash 嵌入到在 chrome safari firefox 等中运行的 html 页面中
  • 在特定页面上执行 javascript 的正确“Rails”方式

    我试图在特定页面上运行 javascript 而我唯一的解决方案似乎是反模式 我有controller js内部生成的assets javascripts 我在用着gem jquery turbolinks 我的代码类似于以下内容 docu
  • 从函数返回函数的目的是什么?

    阅读一些遗留代码 发现 A prototype setSize function var v1 new Vector2 return function size var halfSize v1 copy size multiplyScala
  • 导航栏下拉菜单(折叠)在 Bootstrap 5 中不起作用

    我在尝试使用以下命令创建响应式菜单或下拉按钮时遇到问题Bootstrap 5一切似乎都正常 导航图标和下拉图标出现 但它不起作用 当我单击nav图标或dropdown按钮 无dropdown menu apears 我想特别提到的是 我还包
  • 为什么 setTimeout 在 Chrome 中触发两次,而在 IE 或 Firefox 中则不然?

    有人能告诉我为什么 javascript 函数 生成新号码 在 Chrome 中触发两次 但在 IE 或 Firefox 中则不会 使用 Chrome 20 0 1132 57 IE9 和 Firefox 13
  • 将 Firebase 云消息传递与 Windows 应用程序结合使用

    我在 Android 和 iOS 应用程序中使用 Firebase Cloud Messaging 但是我还有此应用程序的 Windows Mac OS 版本 我想保留相同的逻辑 我知道 Firebase Cloud Messaging 可
  • 使用 JavaScript 移动页面上的按钮

    我的按钮可以移动 但奇怪的是 我无法弄清楚偏移是否有问题 我希望我的按钮随着鼠标光标移动 但现在它的移动方式不是我想要的 有时它会消失 另外 创建的新按钮是重叠的 我不知道如何解决这个问题并拥有更好的外观 var coorA var coo
  • 如何正确取消引用然后删除 JavaScript 对象?

    我想知道从内存中完全取消引用 JavaScript 对象的正确方法 确保删除时不会在内存中悬空 并且垃圾收集器会删除该对象 当我看这个问题时在 JavaScript 中删除对象 https stackoverflow com questio
  • 使用 Javascript 设置 cookie [重复]

    这个问题在这里已经有答案了 我正在尝试构建我的第一个移动应用程序 它需要连接到我的 mysql 数据库并使用 json 返回数据 这很好 目前我有一个登录系统 一旦确定用户名和密码存在 它就会返回一条成功消息 对于下一步 我想在我的页面上使
  • Highcharts jQuery 渲染问题 - 所有浏览器

    我在尝试使用构建堆积柱形图时遇到了一个奇怪的问题高图表 http www highcharts com 当图表呈现时 在您调整浏览器大小之前 不会显示列无论如何 导致图表重绘 我认为 图表的其余部分显示 轴 标题等 但不显示列本身 我在 I
  • 使用 Enzyme 测试 `React.createRef` api

    我想测试下面的类 它使用React createRef api 不过 快速搜索并没有发现任何这样做的例子 有人成功过吗 我该如何嘲笑裁判 理想情况下我想使用shallow class Main extends React Component
  • react-native - 图像需要来自 JSON 的本地路径

    你好社区 我正在react native中开发一个测试应用程序 并尝试从本地存储位置获取图像 我实际在做什么 我将图像直接链接源提供给 var 并在渲染函数中调用此方法 react 0 14 8 react native 0 23 1 np
  • Flot 库将 y 轴设置为最小值 0 和最大值 24

    如何将 y 轴设置在 0 到 24 的范围内 这是我的代码 j plot j placeholder d1 xaxis mode time min new Date 2010 11 01 getTime max new Date 2011
  • 使用velocity.js制作可拖动元素的动画

    我正在使用velocity js 为用户拖动的可拖动 SVG 元素设置动画 然而 velocity js 将先前的 mousemove 坐标排队并通过所有后续的 mousemove 坐标进行动画处理 我想要的是velocity js 不要对

随机推荐

  • border-sizing属性详解和应用

    box sizing用于更改用于计算元素宽度和高度的默认的 CSS 盒子模型 它有content box border box和inherit三种取值 inherit指的是从父元素继承box sizing表现形式 不再冗赘 1 属性讲解 c
  • 性能测试场景设计深度解析

    感谢合众支付资深技术专家程超的推荐与审校 作者 张允庆 现就职于易宝支付有限公司 任职高级性能测试工程师 有多年的系统性能测试设计与优化经验 经历过大小上百个项目的性能优化 对性能测试有着较为深入的研究 2008年底获得北京大学理学学士学位
  • Hystrix工作步骤说明以及服务监控hystrixDashboard

    目录 一 步骤说明和流程解析 二 服务监控hystrixDashboard 官网 How it Works Netflix Hystrix Wiki GitHub 一 步骤说明和流程解析 1 创建 HystrixCommand 用在依赖的服
  • 第二章 Redis高级

    第二章 Redis高级 学习目标 目标1 能够说出redis中的数据删除策与略淘汰策略 目标2 能够说出主从复制的概念 工作流程以及场景问题及解决方案 目标3 能够说出哨兵的作用以及工作原理 以及如何启用哨兵 目标4 能够说出集群的架构设计
  • 大数据之Shell基础

    目录 1 shell概述 2 shell脚本入门 2 1 shell 解析器 2 2 脚本格式 3 shell中的变量 3 1 系统变量 3 2 自定义变量 4 运算符 4 1基本语法 4 2 案例实操 5 条件判断 5 1 基本语法 5
  • Python入门学习14(面向对象)

    一 内置方法 二 封装 1 封装的概念是指 将现实世界事物在类中描述为属性和方法 即为封装 2 什么是私有成员 为什么需要私有成员 现实事物有部分属性和行为是不公开对使用者开放的 同样在类中描述属性和方法的时候也需要达到这个要求 就需要定义
  • LSM树(Log-Structured Merge Tree)存储引擎

    LSM树 Log Structured Merge Tree 存储引擎 代表数据库 nessDB leveldb Hbase等 核心思想的核心就是放弃部分读能力 换取写入的最大化能力 LSM Tree 这个概念就是结构化合并树的意思 它的核
  • 双色球选号--python

    编程要求 根据提示 在右侧编辑器补充代码 编写一个能实现双色球选号的小程序 双色球选号由7个数字组成y 其中有6个红球 其号码的取值范围为 1 33 一个蓝球的取值范围为 1 16 要求6个红球从小到大排列 蓝球在最后输出 其输出格式为09
  • Java枚举类型在后台响应中的使用

    在前后台分离开发过程中 统一响应的格式可以使用枚举类型进行规范开发 对于不同的错误 异常类型可以响应不同的状态码和响应信息 1 枚举类型的简单理解 枚举类型就是包含了有限个枚举对象集合的类 而枚举对象就是集合中其中一个 可以使用枚举类名直接
  • 攻防世界 pwn forgot

    下面记录一下我在做攻防世界的pwn练习题中的forgot题目的过程 这个题目现在还是有些疑惑的 首先我们看一下题目的安全机制 然后IDA看一下主函数 int cdecl main size t v0 ebx char v2 32 esp 1
  • [ mongoDB ] - MongoDB 连接池

    一 mongoDB中的连接池 刚上手MongoDB 在做应用时 受以前使用关系型数据库的影响 会考虑数据库连接池的问题 关系型数据库中 我们做连接池无非就是事先建立好N个连接 connection 并构建成一个连接池 connection
  • TensorFlow与CUDA和cuDNN对应关系查询

    更新至2021 5 查询官方网址 https tensorflow google cn install source windows hl en tested build configurations
  • python操作Excel表格文件

    python作为一种高效的代码 通常用来处理重复繁琐的工作 读写Excel表格就是一种 今天我们总结一下如何用python处理Excel文件 1 读取Excel表格 这里我们用到xlrd模块 Excel read 1 导入xlrd模块 im
  • android linearlayout 把控件view置底部(放在页面最下方)

  • webpack中loader加载器的使用及原理(常用的loader加载器)

    webpack的loaders是一块很重要的组成部分 我们都知道webpack是用于资源打包的 里面的所有资源都是 模块 内部实现了对模块资源进行加载的机制 但是Webpack本身只能处理 js模块 如果要处理其他类型的文件 就需要使用 l
  • 电信光纤天翼网关将默认的路由模式修改为桥接模式

    前两年将家里的电信宽带升级到光纤 光猫也随之进行了升级 当时升级好后 电信工作人员介绍说新的光猫带有wifi功能 如果连接路由器可以不用配置路由器的拨号设置 说是升级到光纤后可以直接连接网线上网 不用再拨号了 当时也没怎么在意 网线连上路由
  • 基于 SpringBoot 的 4S店车辆管理系统,可作为毕业设计

    博主介绍 程序员徐师兄 7年大厂程序员经历 全网粉丝30W Csdn博客专家 掘金 华为云 阿里云 InfoQ等平台优质作者 专注于Java技术领域和毕业项目实战 文章目录 1 简介 2 技术栈 3 功能总览 4 系统设计 4 1 系统设计
  • 1023 组最小数

    题目 给定数字 0 9 各若干个 你可以以任意顺序排列这些数字 但必须全部使用 目标是使得最后得到的数尽可能小 注意 0 不能做首位 例如 给定两个 0 两个 1 三个 5 一个 8 我们得到的最小的数就是 10015558 现给定数字 请
  • CURL解析超时的解决方案

    背景 项目中需要在抓取纷享销客CRM图片上传到OSS 调用OssClient php时 容易发生解析超时 多重试几次就ok 错误提示 2019 04 08 19 41 01 lumen DEBUG 出错文件 home zrj www adm
  • elementui——el-form动态表单props正确写法,如何使用 validateField

    el form动态表单props正确写法 如何使用 validateField