Element UI、Element Plus 里的表单验证的required必填的属性不能动态响应?

 一 问题背景

想要实现:

新增/修改对话框中(同一个),修改时“备注”字段非必填,新增时"备注"字段必填

结果发现直接写不生效-初始化一次性

edit: [{ required: true, message: "请输入备注", trigger: "blur" }],

写成validator虽然生效但是必填时没有*-动态但没required配置项匹配的样式

validator: (rule, value, callback) => {
if (dialogType.value === 'edit' && !value?.trim()) {
callback(new Error('请输入备注'));
} else {
callback();
}
},
trigger: 'blur'
  remark: [{validator: (rule: any, // Element Plus 内部规则对象,通常无需具体类型value: string, // 输入框的值(根据字段名 remark 推断为字符串)callback: (error?: Error) => void // Element Plus 验证回调函数) => {if (dialogType.value === "edit" && !value?.trim()) {callback(new Error("请输入备注"));} else {callback();}},trigger: "blur",},],

 二 解决方法

(一)prop写成判断对应不同rules规则,对号入座

        <el-form-itemlabel="备注":prop="dialogType === 'edit'? 'remark' : ''"><el-input v-model="form.remark" /></el-form-item>
const dialogType = ref<"add" | "edit">("add");
const rules = {remark: [{ required: true, message: "请输入备注", trigger: "blur" }]
}

(二)把rules挪到el-form-item内部

        <el-form-itemlabel="备注"prop="remark":rules="{required: dialogType === 'edit' ? true : false,message: '请输入备注',}"><el-input v-model="form.remark" /></el-form-item>

感觉实现的都挺简洁的,比起监听什么的实现方式

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/76898.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

秀丸编辑器 使用技巧

参考资料 第II部〜知っていると便利な秀丸の機能 検索テキストファイルの16進表示について秀丸エディタヘルプ目次秀丸エディタ&#xff31;&#xff06;&#xff21;集(第9.6版)&#xff08;HTML 形式&#xff09;テンプレート&#xff08;Ver9.43対応版&#xff09; 目录 零…

【期末复习-考试】软件质量测试与保考试题库(选择题+填空题)

软件质量测试与保证考试题库&#xff08;选择题 填空题&#xff09; 一、软件测试基础理论&#xff08;200 题&#xff09; &#xff08;一&#xff09;选择题&#xff08;100 题&#xff09; 软件测试的根本目的是&#xff08; 发现软件中的缺陷&#xff09;A. 证明软件无…

数据结构与算法学习笔记(Acwing提高课)----动态规划·数字三角形

数据结构与算法学习笔记----动态规划数字三角形 author: 明月清了个风 first publish time: 2025.4.23 ps⭐️终于开始提高课的题啦&#xff0c;借的人家的号看&#xff0c;以后给y总补票叭&#xff0c;提高课的题比之前的多很多啊哈哈哈哈&#xff0c;基本上每种题型都对应了…

阿里巴巴安全工程师面试题:BAS

阿里巴巴新发布了针对应届生的安全工程师招聘岗位&#xff0c;岗位要求&#xff1a; 研究新型前沿攻防技术&#xff0c;验证正向和防御安全产品能力的有效性&#xff0c;挖掘其规则或引擎漏洞&#xff0c;并利用BAS&#xff08;Breach and Attack Simulation&#xff09;建立自…

【正则表达式】正则表达式使用总结

正则表达式除了匹配普通字符外,还可以匹配特殊字符,这些特殊字符被称为“元字符”。‌ 特殊字符(元字符) ‌限定符‌:用于指定正则表达式中某个组件的出现次数。常见的限定符包括: *:0次或多次 +:1次或多次 ?:0次或1次 {n}:恰好n次…

数据库对象与权限管理-Oracle数据字典详解

1. 数据字典概念讲解 Oracle数据字典是数据库的核心组件&#xff0c;它存储了关于数据库结构、用户信息、权限设置和系统性能等重要的元数据信息。这些信息对于数据库的日常管理和维护至关重要。数据字典在数据库创建时自动生成&#xff0c;并随着数据库的运行不断更新。 数据…

链表系列一>两数相加

目录 题目&#xff1a;解析&#xff1a;方法&#xff1a;代码&#xff1a;链表常用技巧&#xff1a; 题目&#xff1a; 链接: link 解析&#xff1a; 方法&#xff1a; 代码&#xff1a; /*** Definition for singly-linked list.* public class ListNode {* int val;* …

FreeRTOS深度解析:队列集(Queue Sets)的原理与应用

FreeRTOS深度解析&#xff1a;队列集&#xff08;Queue Sets&#xff09;的原理与应用 什么是队列集&#xff1f; 在FreeRTOS中&#xff0c;队列集&#xff08;Queue Sets&#xff0c;英文名xQueueSet&#xff09;是一种强大的数据结构&#xff0c;用于高效管理多个队列。它的…

QT creater和vs2017文件路径问题

1. \\双反斜杠&#xff0c;传统写法&#xff0c;需转义 在 C/C 字符串中&#xff0c;\ 具有特殊含义&#xff0c;例如&#xff1a; \n 表示换行 \t 表示制表符 \" 表示双引号 如果要表示一个真正的反斜杠&#xff0c;必须写成 \\&#xff0c;否则编译器会将其解释为转…

对流对象的理解

在c里&#xff0c;“流”可以理解为数据传输与操作的“介质”。 从输入输出角度来看&#xff0c;有输入流&#xff08;比如cin&#xff09;和输出流&#xff08;cout&#xff09;。对于输入流&#xff0c;数据通过它从外部设备&#xff08;例如键盘&#xff09;“流入”程序内…

Visium HD多样本拼片拆分

Visium HD实验的时候一个捕获区域内可以包含多个样本拼片&#xff08;例如多个组织切片或不同样本的排列&#xff09;是常见的实验设计&#xff0c;多样本拼片能够提升实验效率&#xff0c;单张玻片处理多个样本&#xff0c;降低试剂和测序成本&#xff0c;后续分析的时候只需要…

进程(Process)详解

进程&#xff08;Process&#xff09;详解 一、基本定义 ‌概念‌ 进程是计算机中程序的一次动态执行实例&#xff0c;包含程序代码、数据及运行状态&#xff0c;是操作系统进行资源分配和调度的基本单位‌。与静态的“程序”不同&#xff0c;进程是动态实体&#xff0c;随程…

毕业论文超清pdf带标签导出

Word直接导出的pdf不够清晰&#xff0c;使用打印导出的pdf又不带书签以及目录跳转功能这一问题&#xff0c;查阅网上资料使用Adobe DC似乎能够解决但是下载安装比较麻烦&#xff0c;于是写了python程序解决该问题。 解决思路&#xff1a; 使用python脚本对两个pdf文件进行合并…

NOIP2012提高组.同余方程

目录 题目算法标签: 数论, 扩展欧几里得算法思路代码 题目 203. 同余方程 算法标签: 数论, 扩展欧几里得算法 思路 简单的扩展欧几里得算法应用题, 扩展欧几里得算法可以直接计算同余方程的通解, 因为求得是最小正整数解, 因此需要取模转换为正整数 a x b y ≡ 1 ax by …

C++学习-入门到精通-【0】计算机和C++简介

C学习-入门到精通-[0]计算机和C简介 计算机和C简介 C学习-入门到精通-[0]计算机和C简介一、计算机的组成二、硬件和软件三、数据的层次结构四、机器语言、汇编语言和高级语言五、C标准库六、面向对象技术 一、计算机的组成 计算机是由多个不同功能的逻辑单元组成的&#xff1a…

macOS 系统设置息屏情况下,PHP等后台脚本继续执行

在 macOS 系统下&#xff0c;当屏幕息屏或合上盖子时&#xff0c;后台脚本程序是否会继续运行&#xff0c;主要取决于以下几个因素&#xff1a; 1. 系统睡眠状态的影响 默认情况&#xff1a;合盖/息屏后&#xff0c;Mac 会进入「睡眠模式」&#xff08;部分硬件休眠&#xff…

SpringBoot集成ActiveMQ异常处理机制:若未捕获异常,消息会被重新投递

一、问题描述 SpringBoot项目集成AvtiveMQ&#xff0c;作为消息消费者。如果在消费消息的方法中&#xff0c;抛出异常&#xff0c;会产生什么效果&#xff1f; 二、ActiveMQ异常处理机制&#xff08;AI问答仅供参考&#xff09; 在Spring Boot项目集成ActiveMQ作为消息消费者…

【Java学习笔记】random的使用

random使用方法 使用说明&#xff1a;返回的是(0<n<1)这个范围中的任意带正号的double值 代码实例 public class helloworld{public static void main(String[] args){System.out.println(Math.random());} }生成0-100中的任意数代码示例 public class Main {public …

(三)垂直分库架构、分布式数据库

文章目录 垂直分库架构/分布式数据库什么是垂直分库架构架构模型优缺点优点缺点 技术案例分布式数据库架构模型优缺点优点缺点 技术案例 垂直分库架构/分布式数据库 什么是垂直分库架构 根据业务的模块划分&#xff0c; 将不同业务的数据放到不同的数据库中。 比如一个电子商城…

数据结构线性表的顺序存储结构

线性表是由零个或多个数据元素组成的有序序列。 特点&#xff1a; 数据元素间是有顺序的&#xff1b; 数据元素的个数是有限的&#xff1b; 一般来说&#xff0c;数据元素的类型是相同的&#xff08;强类型语言&#xff09;。c/c是强类型语言&#xff0c;必须指定数据类型。…