# 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) を参照してください。