Strings
tx()
tx文字列翻訳関数のAPIリファレンス
概要
tx()
関数は文字列を翻訳するためのサーバーサイド関数です。
await tx('Hello, world!'); // returns 'Hola, mundo!'
ランタイム翻訳:
tx()
の翻訳は実行時に行われます。
これは翻訳がライブで実行されることを意味し、実行時に判明するコンテンツを翻訳することができます。
リファレンス
パラメータ
Prop | Type | Default |
---|---|---|
options?? | RuntimeTranslationOptions | {} |
content? | string | - |
名前 | 説明 |
---|---|
content | 翻訳が必要な文字列。 |
options | tx() の動作をカスタマイズするための翻訳オプション。RuntimeTranslationOptions を参照してください。 |
戻り値
翻訳されたコンテンツを含む文字列、または翻訳が不要な場合は元のコンテンツに解決されるプロミス。
動作
tx()
関数は実行時に文字列を翻訳します。
これは翻訳がライブで実行されることを意味するため、実行時にのみ判明するコンテンツを翻訳することができます。
トレードオフとして、オンデマンド翻訳の読み込みを待つ間に遅延が発生し、これは大幅に遅くなります。
私たちのアドバイスは、getGT()
、useGT()
、または<T>
を使用してビルド時に翻訳できるものはすべて翻訳し、
tx()
や<Tx>
のようなオンデマンド翻訳は必要な場合にのみ使用することです。
こちらのデプロイメントガイドに必ず従ってください。
例
基本的な使用方法
tx()
を使用して文字列を翻訳できます。
import { tx } from 'gt-next/server';
export default async function translateGreeting() {
return await tx("Hello, world!");
}
コンテキストの追加
翻訳時に考慮されるコンテキストを提供することで、翻訳をカスタマイズできます。
import { tx } from 'gt-next/server';
export default async function TranslateWithOptions() {
return await tx("Hello, world!", {
$context: 'Translate informally'
});
}
変数の使用
文字列に値を渡すには、(1) 識別子を割り当て、(2) 渡されたオブジェクト内でその識別子を参照する必要があります。
import { tx } from 'gt-next/server';
export default async function translateWithVariables() {
return await tx("The cost is {price, number, ::currency/USD}", {
price: 29.99,
});
}
ロケールの指定
翻訳に使用するロケールを指定できます。 デフォルトでは、ロケールはユーザーの優先言語に設定されます。
import { tx } from 'gt-next/server';
export default async function translateWithLocale() {
return await tx("Hello, world!", { $locale: 'fr' });
}
注意事項
tx()
はサーバーサイドでの使用専用であり、クライアントサイドコンポーネントでは使用できません。tx()
による翻訳は実行時に行われるため、リアルタイムで翻訳されます。これはビルド時の翻訳よりも大幅に遅くなります。
次のステップ
- デプロイ前に文字列を翻訳するには、
useGT()
とgetGT()
を参照してください。 - jsxを翻訳するには、
<T>
と<Tx>
を参照してください。 - 翻訳のカスタマイズに関する詳細情報については、
RuntimeTranslationOptions
を参照してください。
このガイドはいかがですか?