Strings

useGT()

useGT() 文字列翻訳関数のAPIリファレンス

概要

useGT() 関数は、ビルド時に文字列を翻訳するためのクライアントサイドのフックです。

const t = useGT();
 
<p>{  t('このテキストは翻訳されます')  }</p>;

ビルド時の翻訳: useGT() の翻訳は、アプリがデプロイされる前のビルド時に行われます。 翻訳された文字列に変数を渡すことはできますが、ビルド時に既知のコンテンツのみを翻訳できます。

リファレンス

パラメーター

なし

戻り値

提供されたコンテンツを翻訳するコールバック関数、t()

(content: string, options?: InlineTranslationOptions) => string
名前説明
contentstring翻訳される文字列コンテンツ。
options?InlineTranslationOptionst()の動作をカスタマイズするための翻訳オプション。

動作

本番環境

CDプロセス中に、t() 関数内のコンテンツは、アプリケーションがデプロイされる前に翻訳されます。 これにより、すべてのロケールでの読み込み時間が速くなりますが、ビルド時に既知のコンテンツのみを翻訳できます。

生成された翻訳は、設定に応じて (1) CDN に保存されるか、(2) アプリのビルド出力に保存されます。 そこから、翻訳されたコンテンツがユーザーに提供されます。 翻訳が見つからない場合は、元のコンテンツにフォールバックします。

こちらのデプロイメントガイドに従ってください。

開発環境

開発中は、t() 関数が要求に応じてコンテンツを翻訳します。 これは、アプリが異なる言語でどのように見えるかをプロトタイプするのに役立ちます。 この動作を有効にするには、環境に開発用APIキーを追加することを忘れないでください。

開発中の要求に応じた翻訳では遅延が発生します。 これは、本番ビルド中には発生しませんが、コンテンツが要求に応じて明示的に翻訳されている場合、 つまり、tx() または <Tx> を使用している場合を除きます。


基本的な使い方

useGT() を使用して文字列を翻訳できます。

"use client";
import { useGT } from 'gt-next/client';
 
export default function TranslateGreeting() {
  const t = useGT();
 
  return (
    <p>
      {t('Hello, Alice!')}
    </p>
  );
}

注意: "Alice" はユーザーの優先言語に翻訳されます。

変数の使用

辞書翻訳に変数を渡すことができます。

"use client";
import { useGT } from 'gt-next/client';
 
export default function TranslateGreeting() {
  const t = useGT();
 
  return (
    <p>
      {t('Hello, {name}!', { variables: { name: 'Alice' } })}
    </p>
  );
}

注意: "Alice" は変数であるため、ユーザーの優先言語に翻訳されません。


メモ

  • useGT() 関数は、文字列を翻訳するクライアントサイドのフックです。
  • useGT() を使用した翻訳文字列は、実行時の前、ビルドプロセス中に行われます(開発中を除く)。

次のステップ

  • ビルド時にサーバーサイドで文字列を翻訳するには、getGT() を参照してください。
  • 実行時の翻訳については、tx() および <Tx> を参照してください。
  • 翻訳のカスタマイズに関する詳細は、InlineTranslationOptions を参照してください。

このページについて