[React]antd表单校验函数写法

news/2024/11/29 17:26:52/文章来源:https://www.cnblogs.com/ximu1009/p/18577181

来自文心一言

通过 rules 属性来定义校验规则,其中可以包含自定义的校验函数 validator

import React from 'react';
import { Form, Input, Button } from 'antd';const MyForm = () => {const [form] = Form.useForm();// 自定义校验函数const checkUsername = (_, value) => {if (!value) {return Promise.reject(new Error('用户名不能为空'));}if (value.length < 3) {return Promise.reject(new Error('用户名长度不能少于3个字符'));}return Promise.resolve();};const onFinish = (values) => {console.log('Success:', values);};const onFinishFailed = (errorInfo) => {console.log('Failed:', errorInfo);};return (<Formform={form}name="basic"labelCol={{ span: 8 }}wrapperCol={{ span: 16 }}initialValues={{ remember: true }}onFinish={onFinish}onFinishFailed={onFinishFailed}autoComplete="off"><Form.Itemlabel="用户名"name="username"rules={[{ required: true, message: '请输入用户名!' },{ validator: checkUsername }  // 使用自定义校验函数
        ]}><Input /></Form.Item><Form.Item wrapperCol={{ offset: 8, span: 16 }}><Button type="primary" htmlType="submit">提交</Button></Form.Item></Form>
  );
};export default MyForm;

 

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

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

相关文章

windows下netstat及网络查看工具的使用

1.打开cmd: win+R 输入cmd 2.查看工具相关指令可以看到相关指令能配置查看的内容 3.查看相应内容 例如我想查看当前主机UDP协议所使用的端口: netstat -ano -p UDP同理查看TCP所使用的端口: netstat -ano -p TCP二、windows 自带的网络监视工具的使用 1.打开资源管理器 快捷键…

CTP行情和交易接口的初始化流程

目录行情接口初始化交易接口初始化行情接口初始化mdapi->Init(); 初始化行情接口的工作线程初始化之后,线程自动启动,并使用注册的地址向服务端请求建立连接。综合交易平台接口都有独立的工作线程如果开发者在进行可视化程序的开发,请务必注意线程冲突的问题。api启动,I…

数字电子技术的课设,交通灯倒计时

想知道这个要怎么实现30,5,20的倒计时,这个只能实现,20,5,10的,请问要怎么修改,谢谢

C++下的gRPC与protobuf使用和介绍

目录gRPC允许定义四类服务方法流是会结束的stream(流式传输)编写流程客户端使用 ClientReader客户端使用 ClientWriter客户端使用 ClientReaderWriter服务器端gRPC允许定义四类服务方法一元RPC:客户端发送一次请求,等待服务端响应结构,会话结束,就像一次普通的函数调用这…

uniapp 微信小程序 子组件行内样式通过父组件参数获取

uniapp中正常按vue写法没问题,但是编译成微信小程序时,style中会变成[object object],如下图 子组件可以通过计算属性处理一下传进来的style对象,代码如下<template><div><div>我是自定义组件</div><div :style="generateStyle">00{{t…

HuggingFace入门与实践

现在全民AI大模型,虽然我不是算法工程师,但是作为IT从业者,多少应该了解一下。然而,论文太多,原理太难,那咱们就从实践开始,先实践看效果,再学习研究原理。 1. 存在价值及原因简而言之:HuggingFace是菜鸟的福音,大佬的舞台,学术与工程的桥梁!平台链接:https://hug…

Filter内存马

概述 最近感冒了,不想BB太多,直接开始调试吧,先写个Filter来调试 Filter代码 新建一个FilterShell类,代码如下: 一个类如果想要成为Filter则需要继承Filter,然后重写init、doFilter、destory这三个方法,分别表示了init::Filter在初始化时被调用 doFilter:在Filter被命…

探索 TypeScript 编程的利器:ts-morph 入门与实践

我们是袋鼠云数栈 UED 团队,致力于打造优秀的一站式数据中台产品。我们始终保持工匠精神,探索前端道路,为社区积累并传播经验价值。本文作者:贝儿背景 在开发 web IDE 中生成代码大纲的功能时, 发现自己对 TypeScript 的了解知之甚少,以至于针对该功能的实现没有明确的思…

RK3562J正式支持NPU,性价比再提升!

RK3562J是瑞芯微最新推出的一款超高性价比工业处理器,四核Cortex-A53@1.8GHz + Cortex-M0@200MHz异构多核架构,并支持十路UART、两路CAN、两路网口、三种显示、双路Camera等,外设接口资源十分丰富,是RK3568J处理器降成本、降功耗的首选平台,在工商业储能EMS、通讯管理机、…

Movie相关

IDA-VLM: Towards Movie Understanding via ID-Aware Large Vision-Language Model 故事:现在的LVLM只能处理单场景,跨场景中关联实体的能力不行。比如电影中同一个角色在不同场景中出现,现有的LVLM不能把相同角色合并。所以本文提出了一个benchmark衡量跨场景角色对齐能力,…

PHY6236超低成本低功耗蓝牙芯片智能灯控家居

超低成本SOC蓝牙芯片PHY6236PHY6236 是一款用于低功耗蓝牙和专有 2.4G 应用的片上系统 (SoC)。它具有高性能低功耗 32 位 RISC-V MCU,具有 8KB 保留 SRAM、80KB ROM、8KB OTP 和超低功耗、高性能、多模式无线电。此外,PHY6236 还可以支持具有安全性和应用的 BLE。串行外设 IO…

20222411 2024-2025-1 《网络与系统攻防技术》实验五实验报告

1.实验内容 1.1 实践内容 (1)从www.besti.edu.cn、baidu.com、sina.com.cn中选择一个DNS域名进行查询,获取如下信息:DNS注册人及联系方式、该域名对应IP地址、IP地址注册人及联系方式、IP地址所在国家、城市和具体地理位置 PS:使用whois、dig、nslookup、traceroute、以及…