# gt-next: General Translation Next.js SDK: tx URL: https://generaltranslation.com/ja/docs/next/api/strings/tx.mdx --- title: tx description: tx文字列翻訳関数のAPIリファレンス --- ## 概要 `tx` 関数は、サーバーサイドで文字列を翻訳する関数です。 ```jsx await tx('Hello, world!'); // 'Hola, mundo!' を返す ``` **Runtime翻訳:** `tx` の翻訳は runtime で行われます。 つまり、翻訳はその場で実行されるため、runtime 時に判明するコンテンツも翻訳できます。 ## リファレンス ### パラメータ | 名前 | 説明 | | --------- | -------------------------------------------------------------------------------------------------------------------------- | | `content` | 翻訳対象の文字列です。 | | `options` | `tx` の動作をカスタマイズするためのオプションです。詳細は [`RuntimeTranslationOptions`](/docs/next/api/types/runtime-translation-options) を参照してください。 | ### 戻り値 翻訳後の内容を含む文字列、または翻訳が不要な場合は元の内容を含む文字列に解決される Promise。 *** ## 動作 `tx` 関数は、runtime に文字列を翻訳します。 つまり、翻訳はその場で実行されるため、runtime でしか判明しないコンテンツも翻訳できます。 その代わり、オンデマンド翻訳の読み込みを待つ間に遅延が発生するため、処理は大幅に遅くなります。 推奨事項としては、[`getGT`](/docs/next/api/strings/use-gt)、[`useGT`](/docs/next/api/strings/use-gt)、または [``](/docs/next/api/components/t) を使用して build time に翻訳できるものはすべて翻訳し、 `tx` や [``](/docs/next/api/components/tx) のようなオンデマンド翻訳は、必要な場合にのみ使用してください。 必ず[こちらのデプロイガイド](/docs/next/tutorials/quickdeploy)に従ってください。 *** ## 例 ### 基本的な使い方 `tx` を使って文字列を翻訳できます。 ```javascript title="src/components/translateGreeting.jsx" copy import { tx } from 'gt-next/server'; export default async function translateGreeting() { return await tx("Hello, world!"); // [!code highlight] } ``` ### コンテキストの追加 翻訳時に考慮するコンテキストを指定することで、翻訳をカスタマイズできます。 ```javascript title="TranslateWithOptions.jsx" copy import { tx } from 'gt-next/server'; export default async function TranslateWithOptions() { return await tx("Hello, world!", { $context: 'Translate informally' // [!code highlight] }); } ``` ### 変数を使う 文字列に値を渡すには、(1) 識別子を割り当て、(2) 渡すオブジェクトでその識別子を参照する必要があります。 ```jsx title="translateWithVariables.js" copy // [!code word:price] import { tx } from 'gt-next/server'; export default async function translateWithVariables() { return await tx("The cost is {price, number, ::currency/USD}", { price: 29.99, }); } ``` ### ロケールの指定 翻訳に使用するロケールを指定できます。 デフォルトでは、ロケールはユーザー's preferred languageに設定されます。 ```jsx title="translateWithLocale.js" copy import { tx } from 'gt-next/server'; export default async function translateWithLocale() { return await tx("Hello, world!", { $locale: 'fr' }); // [!code highlight] } ``` *** ## 注記 * `tx` はサーバーサイド専用で、クライアントサイドのコンポーネントでは使用できません。 * `tx` による翻訳は runtime 時に実行され、リアルタイムで翻訳されます。これは build time の翻訳より大幅に低速です。 ## 次のステップ * デプロイ前に文字列を翻訳する方法については、[`useGT`](/docs/next/api/strings/use-gt) と [`getGT`](/docs/next/api/strings/get-gt) を参照してください。 * JSX を翻訳する方法については、[``](/docs/next/api/components/t) と [``](/docs/next/api/components/tx) を参照してください。 * 翻訳のカスタマイズに関する詳細は、[`RuntimeTranslationOptions`](/docs/next/api/types/runtime-translation-options) を参照してください。