---
# System prepended metadata

title: '`useFormField` hook'
tags: [zeta-dom-react]

---

---
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.
:::
