# Vue: useGT
URL: https://generaltranslation.com/it/docs/vue/reference/composables/use-gt.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Ottieni una funzione per tradurre stringhe inline. Riferimento API per useGT.

Il composable `useGT` restituisce una funzione sincrona per la ricerca di stringhe semplici nel catalogo. Usala per etichette, placeholder e altre stringhe autonome all&#39;interno di un componente Vue.

## Panoramica [#overview]

Riesci a usare `useGT` durante l&#39;inizializzazione del componente, quindi riesci a usare la funzione restituita dal template o da un altro effetto reattivo:

```vue
<script setup lang="ts">
import { useGT } from 'gt-vue';

const gt = useGT();
</script>

<template>
  <input :placeholder="gt('Search products')" />
</template>
```

Usa invece [`<T>`](/docs/vue/reference/components/t) quando il testo e il markup annidato devono costituire un&#39;unica traduzione avanzata. Usa [`t()`](/docs/vue/reference/functions/t) per le stringhe a livello di modulo in una SPA eseguita solo nel browser.

## Funzionamento [#how-it-works]

* **Ricerca sincrona.** La funzione restituita calcola l&#39;hash della stringa sorgente e del contesto facoltativo, quindi legge il catalogo caricato del plugin attivo.
* **Fallback alla sorgente.** Se un&#39;entry è assente o ha una struttura del catalogo non corretta, viene restituita la stringa originale.
* **Solo stringhe semplici.** Le parentesi graffe rimangono letterali. La funzione non supporta la sintassi ICU, le variabili di interpolazione, `$id`, `$maxChars` o `$format`.
* **Ambito del plugin.** Riesci a usare il composable da un componente incluso nel plugin restituito da [`createGT()`](/docs/vue/reference/functions/create-gt) o [`initializeGTSPA()`](/docs/vue/reference/functions/initialize-gt-spa). Riuscire a usarlo senza un plugin installato genera un errore. Un plugin [`createGT()`](/docs/vue/reference/functions/create-gt) con ambito di richiesta supporta anche i componenti renderizzati sul server.

L&#39;estrattore richiede una stringa analizzabile staticamente, ad esempio un letterale stringa, un template literal senza espressioni o un identificatore immutabile che si risolve in uno di questi. Anche il contesto deve essere statico, affinché il catalogo generato e l&#39;hash a runtime corrispondano.

## Parametri [#parameters]

`useGT` non accetta parametri.

## Restituisce [#returns]

**Tipo** `(message: string, options?: GTStringOptions) => string`

Una funzione sincrona con i seguenti parametri:

| Parametro             | Descrizione                                               | Tipo                                                             | Facoltativo | Predefinito |
| --------------------- | --------------------------------------------------------- | ---------------------------------------------------------------- | ----------- | ----------- |
| [`message`](#message) | Stringa sorgente statica da tradurre.                     | `string`                                                         | No          | —           |
| [`options`](#options) | Contesto utilizzato per disambiguare la stringa sorgente. | [`GTStringOptions`](/docs/vue/reference/types/gt-string-options) | Sì          | `{}`        |

### `message`

**Tipo** `string` · **Obbligatorio**

La stringa sorgente statica registrata dall&#39;estrattore e recuperata in fase di runtime.

### `options`

**Tipo** [`GTStringOptions`](/docs/vue/reference/types/gt-string-options) · **Facoltativo** · **Predefinito** `{}`

L&#39;unico campo supportato è `$context?: string`. Modifica l&#39;identità del catalogo, consentendo a stringhe sorgente identiche di avere traduzioni diverse.

```vue
<button>{{ gt('Open', { $context: 'Verb: open the settings panel' }) }}</button>
```

## Reattività [#reactivity]

La funzione restituita legge lo stato reattivo del catalogo e dell&#39;impostazione regionale quando si riesce a usarla. Un&#39;espressione nel template viene rieseguita automaticamente:

```vue
<p>{{ gt('Hello World') }}</p>
```

Per un valore creato durante il setup, racchiudi il riuscire a usarla in `computed`:

```ts
import { computed } from 'vue';

const gt = useGT();
const message = computed(() => gt('Hello World'));
```

Riuscire a usarla una volta crea uno snapshot di stringa semplice:

```ts
const gt = useGT();
const message = gt('Hello World');
```

Con un plugin [`createGT()`](/docs/vue/reference/functions/create-gt), lo snapshot non viene aggiornato quando il catalogo iniziale ha terminato il caricamento o cambia l&#39;impostazione regionale. Una SPA nel browser inizializzata con [`initializeGTSPA()`](/docs/vue/reference/functions/initialize-gt-spa) precarica i dati prima dell&#39;esecuzione dei componenti e ricarica la pagina quando cambia l&#39;impostazione regionale, quindi gli snapshot creati durante il setup vengono ricreati con l&#39;impostazione regionale caricata.

## Esempio [#example]

```vue title="SearchForm.vue"
<script setup lang="ts">
import { computed } from 'vue';
import { useGT } from 'gt-vue';

const gt = useGT();
const emptyMessage = computed(() =>
  gt('No results', { $context: 'Empty search results' })
);
</script>

<template>
  <form>
    <input :placeholder="gt('Search products')" />
    <p>{{ emptyMessage }}</p>
  </form>
</template>
```

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
