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 GT CLI.

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

Prima & dopo

In precedenza, per usare valori dinamici in t() era necessaria 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 testuali e li ricava dietro le quinte.

Configurazione

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

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

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