开源项目低代码表单FormCreate中ElementPlus表单使用校验规则示例

开源项目低代码表单FormCreate 中,可以通过 validate 配置项为表单组件设置验证规则。无论是内置的表单组件还是自定义的表单组件,都支持表单校验。本文将详细介绍验证规则的使用方法,并提供一些示例来帮助您更好地理解和应用这些功能。

源码地址: Github | Gitee

<a class=低代码表单FormCreate" />

基本验证规则

validate 配置项允许您为每个表单字段定义多种验证规则。每个规则都是一个对象,您可以通过设置不同的属性来控制验证行为。

参数说明类型默认值
enum枚举类型string-
len字段长度number-
max最大长度number-
message校验文案string-
min最小长度number-
pattern正则表达式校验RegExp-
required是否必选booleanfalse
transform校验前转换字段值function(value) => transformedValue:any-
type内建校验类型,可选项string‘string’
validator自定义校验function(rule, value, callback)-
whitespace必选时,空格是否会被视为错误booleanfalse

type 需要根据组件的 value 类型定义

常见校验示例

1.必填字段校验

{type: 'input',field: 'username',title: '用户名',validate: [{ required: true, message: '用户名是必填项' }]
}

2.最小长度校验

{type: 'input',field: 'password',title: '密码',validate: [{ required: true, min: 6, message: '密码长度不能少于6个字符' }]
}

3. 正则表达式校验

{type: 'input',field: 'phone',title: '电话号码',validate: [{ required: true, message: '请输入电话号码' },{ pattern: '^1[3-9]\d{9}$', message: '请输入有效的手机号' }]
}

4. 自定义校验

{type: 'input',field: 'age',title: '年龄',validate: [{validator: (rule, value, callback) => {if (value < 18) {callback(new Error('年龄必须大于或等于18岁'));} else {callback();}},message: '请输入合法的年龄'}]
}

5. 枚举值校验

{type: 'select',field: 'role',title: '角色',validate: [{ required: true, message: '请选择角色' },{ enum: ['admin', 'user', 'guest'], message: '角色必须是admin, user, 或guest' }],options: [{ label: '管理员', value: 'admin' },{ label: '用户', value: 'user' },{ label: '游客', value: 'guest' }]
}

利用本文中的示例和 async-validator 的文档,您可以快速实现各种校验需求,为用户提供更好的表单交互体验。


http://www.ppmy.cn/news/1524952.html

相关文章

ISO 21434与网络安全管理系统(CSMS)的协同作用

ISO/SAE 21434与CSMS&#xff08;网络安全管理系统&#xff09;之间的关系主要体现在以下几个方面&#xff1a; 提供指导框架&#xff1a;ISO/SAE 21434《道路车辆—网络安全工程》是一项国际标准&#xff0c;它为汽车行业提供了实施网络安全管理系统的国际认可的方法和最佳实…

模板匹配应用(opencv的妙用)

在图像处理领域&#xff0c;模板匹配是一种常用的技术&#xff0c;用于在一幅大图中寻找与给定模板最匹配的区域。OpenCV作为一个强大的计算机视觉库&#xff0c;提供了cv2.matchTemplate()函数来实现模板匹配功能。本文将详细介绍OpenCV中的模板匹配技术&#xff0c;包括其原理…

qmt量化交易策略小白学习笔记第64期【qmt编程之获取获取期权全推数据--code_list全推tick数据】

qmt编程之获取期权数据 qmt更加详细的教程方法&#xff0c;会持续慢慢梳理。 也可找寻博主的历史文章&#xff0c;搜索关键词查看解决方案 &#xff01; 获取期权全推数据 获取全推tick数据的函数是用户主动调用的工具。所谓"全推tick数据"&#xff0c;指的是以t…

Android 应用使用theme处理全局焦点框

背景 我的应用有个需求&#xff0c;要求处理keycode事件&#xff0c;进行焦点移动处理&#xff0c;必须定制指定的焦点框。而系统的焦点框是固定了&#xff0c;为了保证平台的一致性&#xff0c;没办法直接修改。 问题 经过沟通&#xff0c;大部分都是自行修改了自己的backg…

ARM base instruction -- cset

CSET Conditional Set sets the destination register to 1 if the condition is TRUE, and otherwise sets it to 0. 如果条件为TRUE&#xff0c;则条件集将目标寄存器设置为1&#xff0c;否则设置为0。 32-bit variant Applies when sf 0. CSET <Wd>, <…

Spark MLlib模型训练—推荐算法 ALS(Alternative Least Squares)

Spark MLlib模型训练—推荐算法 ALS(Alternative Least Squares) 如果你平时爱刷抖音,或者热衷看电影,不知道有没有过这样的体验:这类影视 App 你用得越久,它就好像会读心术一样,总能给你推荐对胃口的内容。其实这种迎合用户喜好的推荐,离不开机器学习中的推荐算法。 在…

SimPO

添加链接描述 优化点两个&#xff1a; gamma长度正则 gamma 原始DPO把两部分母拿出来是 − l o g π r e f ( w i n ) π r e f ( l o s e ) -log \frac{\pi_{ref}(win)}{\pi_{ref}(lose)} −logπref​(lose)πref​(win)​ 由于构建数据集时常常把不满意的大模型输出作为…

操作系统 ---- 调度算法【先来先服务(FCFS)、最短作业优先(SJF)、最高响应比优先(HRRN)】

目录 一、常见的调度算法 1. 先来先服务&#xff08;FCFS, First-Come, First-Served&#xff09; 2. 最短作业优先&#xff08;SJF, Shortest Job First&#xff09; 3. 优先级调度&#xff08;Priority Scheduling algorithm&#xff0c;PSA&#xff09; 4. 轮转调度&am…

python 函数 封装

封装 函数的参数是&#xff1a;变量 def 函数(参数):print(参数)if __name__ __main__:函数(参数)函数(参数2)函数的参数是&#xff1a; 字典 import requests# 定义一个字典 data {} 地址 "https://webdriveruniversity.com/" 请求方法 getdata["url"…

Hi3519DV500_Uboot环境变量的编译和烧录

Hi3519DV500_Uboot环境变量的编译和烧录 U-Boot 环境变量在嵌入式系统的引导加载程序中扮演着重要的角色。它们用于存储系统启动时所需的配置信息&#xff0c;如启动命令、内核和根文件系统的位置、串口波特率等。以下是一些常用的 U-Boot 环境变量及其用途&#xff1a; bootde…

安宝特案例 | AR如何大幅提升IC封装厂检测效率?

前言&#xff1a;如何提升IC封装厂检测效率&#xff1f; 在现代电子产品的制造过程中&#xff0c;IC封装作为核心环节&#xff0c;涉及到复杂处理流程和严格质量检测。这是一家专注于IC封装的厂商&#xff0c;负责将来自IC制造商的晶圆进行保护、散热和导通处理。整个制程繁琐…

使用vuex模仿el-table

1、vuex 在main.js引入 import Vue from vue; import Vuex from vuex;Vue.use(Vuex);const store new Vuex.Store({state: {// 定义要传递的数据datas: []},mutations: {// 定义修改数据的 mutationSET_DATAS(state, newDatas) {state.datas newDatas;}},actions: {// 定义…

Java面试篇基础部分-Java的类加载机制

JVM的类加载 JVM在运行Java文件的时候,类加载分为5个阶段:加载、验证、准备、解析、初始化。在类初始化加载完成之后,就可以使用这个类的信息了。当这个类不需要使用的时候,就可以从JVM进行卸载。 加载 加载是指JVM读取Class文件的操作,并且根据Class的文件描述创建对应的…

聚鼎科技:现在做装饰画是靠谱的吗

在生活的各个角落&#xff0c;艺术以多种形式存在着&#xff0c;而装饰画作为其中的一种&#xff0c;一直以其独特的魅力填充着我们的世界。但在这个快速变化的时代&#xff0c;许多人会问&#xff1a;现在做装饰画还是一个靠谱的选择吗? 装饰画的市场依旧充满生机。随着人们对…

Java ssm超市订单管理系统(详细文档)

学生选课系统论文 摘要 随着互联网趋势的到来&#xff0c;各行各业都在考虑利用互联网将自己推广出去&#xff0c;最好方式就是建立自己的互联网系统&#xff0c;并对其进行维护和管理。在现实运用中&#xff0c;应用软件的工作规则和开发步骤&#xff0c;采用Java技术建设小…

Linux从入门到开发实战(C/C++)Day10-线程

1.概念&#xff1a; 线程是一个函数&#xff0c;是os调度的基本单位 Linux内核在2.2版本之前&#xff0c;是没有线程的概念&#xff0c;只有有限个进程&#xff08;4096&#xff09; 在2.4版本中&#xff0c;有了线程的概念&#xff0c;而且可…

安全工具 | 使用Burp Suite的10个小tips

Burp Suite 应用程序中有用功能的集合 img Burp Suite 是一款出色的分析工具&#xff0c;用于测试 Web 应用程序和系统的安全漏洞。它有很多很棒的功能可以在渗透测试中使用。您使用它的次数越多&#xff0c;您就越发现它的便利功能。 本文内容是我在测试期间学到并经常的主要…

配环境时的一些记录

连centos&#xff1a;正常连就好&#xff08;密码验证码&#xff09;连rocky&#xff1a;需要在centos上连&#xff0c;终端里直接ssh [rocky_ip]&#xff1b;在vscode中需要&#xff1a; 修改配置文件&#xff1a;打开命令面板&#xff08;ctrlshiftp&#xff09; -> 输入并…

Android命令行查看CPU频率和温度

在 Android 设备上&#xff0c;你可以通过命令行工具 adb 来查看 CPU 温度和 CPU 频率&#xff0c;并确定是否有降频情况。以下是具体步骤&#xff1a; 1. 查看 CPU 频率 你可以使用以下命令来查看 CPU 各个核心的当前频率&#xff1a; adb shell cat /sys/devices/system/c…

基于Spring Boot的旧物置换网站

构建一个基于Spring Boot的旧物置换网站是一个很好的项目&#xff0c;可以帮助你学习如何设计和实现一个完整的Web应用程序。以下是一个简化版的示例&#xff0c;展示了如何搭建这样一个系统的框架。 1. 创建Spring Boot项目 首先&#xff0c;你需要创建一个新的Spring Boot项…