Zurück

gt@2.13.0

Ernest McCarter avatarErnest McCarter
gtderivet-functiondx

Überblick

Die Funktion t() leitet dynamische Inhalte jetzt automatisch ab — Variablen müssen nicht mehr in derive() verpackt werden. Das ist standardmäßig aktiviert und funktioniert sofort mit der CLI.

Dies ist der neueste Schritt in einer Reihe von Verbesserungen an derive(). Zunächst brachte gt-react@10.15.0 Unterstützung für derive() in das getaggte Template-Literal t. Dann erweiterte gt@2.12.0 derive(), sodass Werte aus Objekten und Arrays aufgelöst werden können. Jetzt macht gt@2.13.0 es bei der Verwendung von t() vollständig überflüssig, derive() überhaupt aufzurufen.

Vorher & Nachher

Zuvor erforderten dynamische Werte in t() einen expliziten derive()-Aufruf:

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

Verwenden Sie die Variable jetzt einfach direkt:

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

Die CLI handhabt die Ableitung automatisch, wenn sie Ihre t()-Aufrufe analysiert — sie erkennt Variablen mit einer endlichen Menge möglicher Zeichenfolgenwerte und leitet diese im Hintergrund ab.

Konfiguration

Auto-derive ist standardmäßig aktiviert. Um diese Funktion zu deaktivieren, setzen Sie autoDerive in Ihrer gt.config.json auf false:

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

Hinweis: Dies gilt nur für die t()-Funktion. Das getaggte t-Template-Literal-Makro ist davon nicht betroffen — es handhabt die Ableitung bereits über die in gt-react@10.15.0 eingeführte Template-Literal-Syntax.