---
tags: zeta-dom-react
---
# `useFormField` hook
Registers a field in the current `FormContext`.
### `FormFieldProps<T>` interface
Provides a common interface for interacting with field controls.
```typescript
interface FormFieldProps<T = any, V = T> {
label?: string;
name?: string;
value?: T;
required?: boolean;
disabled?: boolean;
error?: string;
showErrorMessage?: boolean;
clearWhenUnmount?: boolean;
onValidate?: ValidateCallback<V>;
onChange?: (value: V) => void;
formatError?: ()
}
```
:::info
All field components using [`useFormField`](#useFormField) hooks must accepts and implements the logic defined in the `FormFieldProps<T>` interface.
:::