戻る

gt@2.13.0

Ernest McCarter avatarErnest McCarter
gtderivet-functiondx

概要

t() 関数で、動的コンテンツが自動的に導出されるようになりました。変数を derive() でラップする必要はもうありません。これはデフォルトで有効になっており、GT CLI ですぐにそのまま利用できます。

これは、derive() に対する一連の改善の最新ステップです。まず、gt-react@10.15.0t タグ付きテンプレートリテラルに derive() のサポートが追加されました。次に、gt@2.12.0derive() がオブジェクトや配列から値を解決できるように拡張されました。そして今回、gt@2.13.0 では t() の使用時に derive() を呼び出す必要が完全になくなりました。

変更前と変更後

以前は、t() 内で動的な値を使うには、明示的に derive() を呼び出す必要がありました。

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

では、変数を直接使用するだけです。

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

CLI は t() 呼び出しの解析時に導出を自動的に処理します。取り得る文字列値が有限個の変数を検出し、それらをバックグラウンドで導出します。

設定

Auto-derive はデフォルトで有効になっています。無効にするには、gt.config.jsonautoDerivefalse に設定します。

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

注: これは t() 関数にのみ適用されます。t タグ付きテンプレートマクロには影響しません。こちらは、gt-react@10.15.0 で導入されたテンプレートリテラル構文によって、すでに導出を処理できるためです。

リンク