Unform
Initial data
Initial data
To provide initial custom data to inputs, you can provide an initialData prop
to the Form component:
1export default function MyForm() {2 return (3 <Form initialData={{ email: 'test@example.com' }}>4 <Input name="email" />5 </Form>6 );7}Set initial data asynchronously
Most of the time, Unform uses the defaultValue prop of inputs to set the
initial data. When you get the data from an API request or an asynchronous call,
the initialData may not work, as the defaultValue doesn't reflect changes.
1export default function MyForm() {2 const formRef = useRef(null);34 useEffect(() => {5 someApiCall().then(user => {6 formRef.current.setData({ email: user.email });7 });8 }, []);910 return (11 <Form ref={formRef}>12 <Input name="email" />13 </Form>14 );15}The setData function exposed by Unform API will replace input data based on
the property name provided in the object received as a parameter.