useForm Hook

Creates a stateful value from the fields in a form.

Berkay Askin
Berkay Askin
1 min read
  • Use the useState() hook to create a state variable for the values in the form.

  • Create a function that will be called with an appropriate event by a form field and update the state variable accordingly.

const useForm = initialValues => { const [values, setValues] = React.useState(initialValues); return [ values, e => { setValues({ ...values, [e.target.name]: e.target.value }); } ]; };

###Example Usage:

const Form = () => { const initialState = { email: '', password: '' }; const [values, setValues] = useForm(initialState); const handleSubmit = e => { e.preventDefault(); console.log(values); }; return ( <form onSubmit={handleSubmit}> <input type="email" name="email" onChange={setValues} /> <input type="password" name="password" onChange={setValues} /> <button type="submit">Submit</button> </form> ); };