React-hook-form-mui (二):表单数据处理
2023-12-18 09:41:16
前言
在上一篇文章中,我们介绍了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); //输出 firstName
console.log(lastName); //输出 lastName
console.log(formData); //输出 { firstName: xx, lastName: xx }
};
return (
<FormContainer
formContext={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
的表单数据处理。希望本文会对你有所帮助。如果有什么问题,可在下方留言沟通。
文章来源:https://blog.csdn.net/m0_73117087/article/details/132408822
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!