# FormRenderer

<PageBadges />

`FormRenderer` convalida e prepara una schema, crea il motore del modulo, renderizza i campi nativi e
Sezioni e produce record strutturati o ripristinabili snapshots.

```jsx
<FormRenderer
  schema={schema}
  initialValues={{ name: "Ada" }}
  mode="edit"
  colorMode="light"
  labelPosition="top"
  onSubmit={saveRecord}
/>
```

## Proprietà essenziali

| Proprietà          | Oggetto                                                           |
| ------------------ | ----------------------------------------------------------------- |
| `schema`           | Un form0 schema contenente `form.elements`.                       |
| `initialValues`    | Valori di campo iniziali non ripetibili.                          |
| `initialSnapshot`  | Ripristinare valori grezzi, stato ripetibile e timestamp insieme. |
| `overrideValues`   | Applicare valori autorevoli rispetto ai valori iniziali.          |
| `onSubmit`         | Ricevere un record strutturato con convalida e metadati.          |
| `onSave`           | Ricevere una snapshot senza richiedere la validità del modulo.    |
| `onSnapshotChange` | Osservare seed e user-change snapshots.                           |
| `mode`             | Avviare la modalità `edit` o `readonly`.                          |

## Integrazione host

- `onRequestClose` consente l'azione di annullamento della radice e riceve `{ reason: "cancel" }` dopo qualsiasi
  necessaria conferma dello scarto.
- `headerAccessory` rende il contenuto dell'applicazione immediatamente sotto l'intestazione incorporata.
- `showHeader` nasconde l'intestazione incorporata quando l'host possiede la navigazione e le azioni circostanti.
- `primaryActionMode`, `primaryActionLabel` e `showPrimaryActionsInViewMode` personalizzano il
  azione primaria incorporata.
- `onSchemaReady` riceve la schema preparata dopo che sono state garantite chiavi stabili.
- `engineOptions` fornisce helper di base, configurazione di sicurezza, avvisi, gestione delle operazioni e
  aggiornare l'osservazione.

Continua con [Valori, snapshots e submission](/it/bindings/react-native/values-snapshots-submission)
o [Modi e navigazione](/it/bindings/react-native/modes-navigation).
