React-hook-form-mui(四):使用reset与初始化后端数据

本文介绍了如何在React项目中使用react-hook-form-mui与后端数据同步,通过`reset`方法初始化表单,展示了从获取后端数据到页面初始化的完整流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

在上一篇文章中,我们介绍了react-hook-form-mui的表单验证功能。本文将从实际项目出发,介绍在真实项目中,如何与后端数据联调并初始化页面数据。
react-hook-form-mui提供了 reset方法,当页面初始化的时候,调用后端数据,并通过reset方法,初始化表单的数据。

代码

以下代码简单的讲解了最基础的一种与后端联调的方式:

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: ''
    }
  });

  const [loading, setLoading] = useState<boolean>(false);

  const onSubmit = (data) => {
    console.log(data);
  };

  React.useEffect(() => {
    setLoading(true);
    //获取后端数据
    getUserSetting<UserSettings>.then(
      (res: UserSettings) => {
        // 重置表单数据
        formContext.reset(res);
        setLoading(false);
      }
    );
  }, []);

  return (
    <FormContainer
      formContext={formContext}
      onSuccess={(data) => {
        onSubmit(data);
      }}
    >
      <TextFieldElement name="firstName" label="First Name" />
      <TextFieldElement name="lastName" label="Last Name" />
      <Button type="submit">Submit</Button>
    </FormContainer>
  );
};

export default MyForm;

在以上demo中,我们获取完后端数据后,通过reset方法重置表单数据,从而达到初始化页面的目的。

总结

以上是关于React-hook-form-mui的页面初始化的讲解。希望本文会对你有所帮助。如果有什么问题,可在下方留言沟通。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值