首页 > 其他分享 >react-hook-form验证

react-hook-form验证

时间:2024-08-03 15:16:59浏览次数:11  
标签:zh errors zod name form react hook import message

import { useForm } from "react-hook-form";
import { zodResolver } from "@hookform/resolvers/zod";
import i18next from "i18next";
import { z } from "zod";
import { zodI18nMap } from "zod-i18n-map";
// Import your language translation files
import translation from "zod-i18n-map/locales/zh-CN/zod.json";
import "../tailwind.css";

// lng and resources key depend on your locale.
i18next.init({
	lng: "zh",
	resources: {
		zh: { zod: translation },
	},
});
z.setErrorMap(zodI18nMap);

const schema = z.object({
	name: z.string().min(1),
	age: z.number().min(10),
});

export const Register = () => {
	const {
		register,
		handleSubmit,
		formState: { errors },
	} = useForm({
		resolver: zodResolver(schema),
	});

	return (
		<form onSubmit={handleSubmit((d) => console.log(d))} noValidate>
			<div className="block">
				<input
					{...register("name")}
					className={errors.name?.message ? "invalid" : "valid"}
					placeholder="name"
					required
				/>
				{errors.name?.message && (
					<p className="error">{errors.name?.message}</p>
				)}
			</div>
			<div>
				<input
					type="number"
					{...register("age", { valueAsNumber: true })}
					className={errors.age?.message ? "invalid" : "valid"}
					placeholder="age"
					required
				/>
				{errors.name?.message && <p className="error">{errors.age?.message}</p>}
			</div>
			<input type="submit" />
		</form>
	);
};

标签:zh,errors,zod,name,form,react,hook,import,message
From: https://www.cnblogs.com/soarowl/p/18340569

相关文章

  • 【创新未发表】Matlab实现蚁狮优化算法ALO-Kmean-Transformer-LSTM组合状态识别算法研
    蚁狮优化算法(AntLionOptimisation,ALO)是一种启发式优化算法,灵感来源于蚁狮捕食过程中的行为。这种算法模拟了蚁狮捕食中的策略,其中蚁狮通过在环境中设置虚拟陷阱来吸引蚂蚁,然后捕食这些落入陷阱的蚂蚁。在算法中,蚁狮代表潜在解决方案,而虚拟陷阱代表目标函数的局部最小值。......
  • Transformer 工作流程(大白话版)
    Transformer工作流程:通俗易懂的解释想象一下,你在参加一个创意写作班,你和其他几位同学一起写一篇故事。老师会让每个人轮流写一段,但在写之前,你们可以参考之前同学写的内容。这有点像Transformer的工作流程。让我们一步步来解释。编码器(Encoder)1.输入嵌入层(InputEmbed......
  • WPF C# implement scaletransform and translatetransfrom programmatically
    privatevoidInitRenderTransfrom(){TransformGrouptg=newTransformGroup();ScaleTransformst=newScaleTransform();if(!tg.Children.Contains(st)){tg.Children.Add(st);scaler=st;}TranslateTransformtt=n......
  • antd react form.list动态增减表单项Switch受控
    importReact,{useState}from'react';import{Form,Input,Switch,Button}from'antd';constDemo=()=>{const[switches,setSwitches]=useState({});constonFinish=(values)=>{console.log('Received......
  • Pytorch笔记|小土堆|P10-13|transforms
    transforms对图像进行改造最靠谱的办法:根据help文件自行学习transforms包含哪些工具(类)以及如何使用————————————————————————————————————自学一个类时,应关注:1、如何使用各种工具(类)的使用思路:创建对象(实例化)——>传入参数,调用函数(如有__......
  • 深度学习扫盲——Transforms
    在PyTorch中,torchvision是一个常用的库,它提供了对图像和视频数据的处理功能,包括数据加载、转换等。transforms是torchvision.transforms模块的一部分,它定义了一系列的图像转换操作,这些操作可以单独使用或者组合成转换序列(通过transforms.Compose),以便于在数据加载时自动应用到图像......
  • Seurat-SCTransform与harmony整合学习
    目录基础介绍SCTransform与harmony联合代码测试1)报错解决2)SCTransform标准化3)harmony去批次基础介绍源于Rtips:Seurat之SCTransform方法原理(qq.com)Seurat对象在经过SCTransform处理后会增加一个SCT的Assay,里面的scaled.data就是经过scale之后的pearsonresidual值......
  • vue3 ref和reactive原理区别
    概述ref是通过一个中间对象RefImpl持有数据,并通过重写它的set和get方法实现数据劫持的,本质上依旧是通过Object.defineProperty对RefImpl的value属性进行劫持。reactive则是通过Proxy进行劫持的。Proxy无法对基本数据类型进行操作,进而导致reactive在面对基本数据类型时的束......
  • 如何理解词向量、Transformer模型以及三个权重矩阵
    词向量与transformer 生成词向量的过程和训练Transformer的过程是两个不同的过程,但它们都是自然语言处理中的重要组成部分。#词向量的生成词向量(如Word2Vec、GloVe、FastText等)通常是通过预训练的词嵌入模型得到的。这些模型在大规模文本数据上训练,捕捉词与词之间的语义关系,......
  • Transformer预测模型及其Python和MATLAB实现
    ###一、背景在自然语言处理(NLP)领域,传统的序列到序列(Seq2Seq)模型大多依赖于循环神经网络(RNN)和长短期记忆(LSTM)网络。这些模型虽然在许多任务中取得了成功,但由于其计算效率低下以及长距离依赖关系处理的不足,导致模型训练时间漫长,并在处理较长文本时效果不佳。2017年,Vaswani等人......