# General Translation React SDKs (gt-react, gt-next): useRegionSelector URL: https://generaltranslation.com/it/docs/react/reference/hooks/use-region-selector.mdx --- title: useRegionSelector description: Crea un selettore di regioni personalizzato con General Translation gt-react. Riferimento API per useRegionSelector. --- L'hook `useRegionSelector` restituisce i dati e gli handler necessari per creare un selettore di regioni personalizzato: la regione attiva, le regioni disponibili, i metadati relativi alla regione e le funzioni per aggiornare la regione o l'impostazione regionale. *Disponibile in `gt-react` e `gt-react-native`. Gli esempi importano da `gt-react`; importa invece dal pacchetto del framework che usi.* *Nota: non è esportato da `gt-next` o `gt-tanstack-start`.* ## Panoramica [#overview] Richiama `useRegionSelector` e collega i relativi valori alla tua interfaccia utente. ```tsx 'use client'; import { useRegionSelector } from 'gt-react'; export default function CustomRegionSelector() { const { region, setRegion, regions, regionData } = useRegionSelector({ // [!code highlight] customMapping: { US: { name: 'United States', emoji: '🇺🇸' } }, // [!code highlight] }); return ( ); } ``` *Nota: `useRegionSelector` è disponibile solo sul client e deve essere utilizzato all'interno di un [``](/docs/react/reference/components/gt-provider). Se non ti serve un'interfaccia utente personalizzata, usa invece il componente [``](/docs/react/reference/components/region-selector).* ## Come funziona [#how-it-works] L'hook restituisce la regione attiva, l'elenco ordinato delle regioni, una mappa `regionData` con i metadati di visualizzazione e i setter per la regione e l'impostazione regionale. Se `regions` non viene fornito, le regioni disponibili vengono ricavate dalle impostazioni regionali supportate. ## Parametri [#parameters] `useRegionSelector` accetta un oggetto di configurazione opzionale. | Parametro | Descrizione | Tipo | Facoltativo | Predefinito | | ---------------------------------------------- | ---------------------------------------------------------------------------------- | ---------- | ----------- | ----------- | | [`regions`](#regions) | Sottoinsieme dei codici regione ISO 3166 da visualizzare. | `string[]` | Sì | Dedotto | | [`customMapping`](#custom-mapping) | Nomi visualizzati, emoji o impostazioni regionali personalizzati per ogni regione. | `object` | Sì | — | | [`prioritizeCurrentLocaleRegion`](#prioritize) | Posiziona per prima la regione dell'impostazione regionale corrente. | `boolean` | Sì | `true` | | [`sortRegionsAlphabetically`](#sort) | Ordina le regioni alfabeticamente in base al nome visualizzato. | `boolean` | Sì | `true` | ### `regions` [#regions] **Tipo** `string[]` · **Facoltativo** · **Predefinito** Dedotto Codici regione ISO 3166 da visualizzare. Se omessi, le regioni vengono dedotte dalle impostazioni regionali supportate. ### `customMapping` [#custom-mapping] **Tipo** `object` · **Opzionale** Mappatura dei codici regione a dati di visualizzazione personalizzati. Ciascun valore può essere una stringa (nome visualizzato) oppure un oggetto con le proprietà `name`, `emoji` e/o `locale`. ### `prioritizeCurrentLocaleRegion` [#prioritize] **Tipo** `boolean` · **Facoltativo** · **Predefinito** `true` Quando è `true`, la regione corrispondente all'impostazione regionale corrente ha la priorità nell'elenco. ### `sortRegionsAlphabetically` [#sort] **Tipo** `boolean` · **Facoltativo** · **Predefinito** `true` Se è `true`, le regioni vengono ordinate alfabeticamente in base al nome visualizzato. ## Restituisce [#returns] **Tipo** `object` | Campo | Descrizione | Tipo | | -------------- | ----------------------------------------------------------------------------------------------------- | --------------------------------------- | | `region` | Il codice regione attualmente selezionato. | `string \| undefined` | | `setRegion` | Aggiorna la regione selezionata. | `(region: string \| undefined) => void` | | `regions` | I codici regione disponibili. | `string[]` | | `regionData` | Mappa che associa i codici regione ai dati di visualizzazione (`code`, `name`, `emoji`, `locale`). | `Map` | | `locale` | L'impostazione regionale corrente. | `string` | | `setLocale` | Aggiorna l'impostazione regionale. | `(locale: string) => void` | | `localeRegion` | Il codice regione ISO 3166 dell'impostazione regionale corrente. | `string` | ## Note [#notes] * `useRegionSelector` è disponibile solo lato client. * Per un menu a discesa pronto all'uso, usa [``](/docs/react/reference/components/region-selector). * Per l'equivalente per l'impostazione regionale, vedi [`useLocaleSelector`](/docs/react/reference/hooks/use-locale-selector).