当前位置: 首页 > news >正文

React-hook-form-mui(二):表单数据处理

前言

在上一篇文章中,我们介绍了react-hook-form-mui的基础用法。本文将着表单数据处理。
react-hook-form-mui提供了丰富的表单数据处理功能,可以通过watch属性来获取表单数据。

Demo

下面是一个使用watch属性的例子:

import React from 'react';
import { useForm } from 'react-hook-form';
import { Button } from '@mui/material';
import { FormContainer, TextFieldElement } from 'react-hook-form-mui';export interface UserSettings {firstName: string;lastName: string;
}const MyForm = () => {const formContext = useForm<UserSettings>({defaultValues: {firstName: '',lastName: ''}});// 使用 watch 属性获取表单数据const { watch } = formContext;const formData = watch();const onSubmit = (data) => {console.log(data);};const handleGetDataClick = () => {const { firstName, lastName }= formData;console.log(firstName); //输出 firstNameconsole.log(lastName); //输出 lastNameconsole.log(formData); //输出 { firstName: xx, lastName: xx }};return (<FormContainerformContext={formContext}onSuccess={(data) => {onSubmit(data);}}><TextFieldElement name="firstName" label="First Name" /><TextFieldElement name="lastName" label="Last Name" /><Button onClick={handleGetDataClick}>Get Form Data</Button><Button type="submit">Submit</Button></FormContainer>);
};export default MyForm;

从以上的demo不难看出,我们能够通过watch很轻易的去获取表单元素的值,而不需要通过useState的方式去获取,能够减少项目中的不必要的代码。

总结

以上是关于React-hook-form-mui的表单数据处理。希望本文会对你有所帮助。如果有什么问题,可在下方留言沟通。

http://www.lryc.cn/news/274731.html

相关文章:

  • java网络文件地址url的转换为MultipartFile文件流
  • JS实现/封装节流函数
  • ENVI 各版本安装指南
  • 60天零基础干翻C++————初识C++
  • 考研复试英语口语问答举例第二弹
  • MyBatis-Plus实现自定义SQL语句的分页查询
  • vue3 里的 ts 类型工具函数
  • 【SpringCloud】之远程消费(进阶使用)
  • 自然语言处理24-T5模型的介绍与训练过程,利用简单构造数据训练微调该模型,体验整个过程
  • CISSP 第5章 保护资产的安全
  • docker安装-在linux下的安装步骤
  • 在Uniapp中使用Echarts创建可视化图表
  • 基于python的leetcode算法介绍之动态规划
  • 通信原理期末复习——计算大题(一)
  • 【萤火虫系列教程】2/5-Adobe Firefly 文字​生成​图像
  • JDK 11:崭新特性解析
  • leetcode.在链表中插入最大公约数
  • 云原生学习系列之基础环境准备(单节点安装kubernetes)
  • 【数据结构】二叉树的概念及堆
  • 美年大健康黄伟:从选型到迁移,一个月升级核心数据库
  • OpenHarmony应用构建工具Hvigor的构建流程
  • ChatGPT在金融财务领域的10种应用方法
  • 全程云OA ajax.ashx SQL注入漏洞复现
  • VMware 安装 macOS虚拟机(附工具包)
  • Tomcat与Servlet是什么关系
  • C++11_右值引用
  • C#使用条件语句判断用户登录身份
  • 在VM下使用Composer完成快照方式的软件制作
  • YOLOv5改进 | Neck篇 | 利用Damo-YOLO的RepGFPN改进特征融合层
  • 设计模式——最全梳理,最好理解