Indietro

gt@2.13.0

Ernest McCarter avatarErnest McCarter
gtderivet-functiondx

Panoramica

La funzione t() ora ricava automaticamente il contenuto dinamico: non è più necessario racchiudere le variabili in derive(). Questa funzionalità è abilitata per impostazione predefinita e funziona subito con la CLI di GT.

Questo è l’ultimo passo di una serie di miglioramenti di derive(). Per prima cosa, gt-react@10.15.0 ha introdotto il supporto per derive() nel tagged template literal t. Poi gt@2.12.0 ha esteso derive() per risolvere i valori da oggetti e array. Ora, gt@2.13.0 elimina del tutto la necessità di chiamare derive() quando si usa t().

Prima e dopo

In precedenza, i valori dinamici in t() richiedevano una chiamata esplicita a derive():

const noun = cond ? "boy" : "girl"
const result = t("The " + derive(noun))

Ora usa direttamente la variabile:

const noun = cond ? "boy" : "girl"
const result = t("The " + noun)

La CLI gestisce automaticamente la derivazione quando analizza le tue chiamate t() — rileva le variabili con un insieme finito di possibili valori stringa e ne ricava le derivazioni in automatico.

Configurazione

La derivazione automatica è abilitata per impostazione predefinita. Per disattivarla, imposta autoDerive su false nel file gt.config.json:

{
  "files": {
    "gt": {
      "parsingFlags": {
        "autoDerive": false
      }
    }
  }
}

Nota: Questo vale solo per la funzione t(). La macro tagged template t non è interessata: gestisce già la derivazione tramite la sintassi dei template literal introdotta in gt-react@10.15.0.