Helpers
getLocale()
getLocale サーバーサイドメソッドのAPIリファレンス
概要
getLocale()
関数は、サーバーサイドレンダリング中にユーザーの現在のロケールを取得します。
返されるロケールは文字列としてフォーマットされており、例:'en-US'
のようになります。
getLocale()
はサーバーサイドのメソッドであり、サーバーサイドコンポーネントでのみ使用できます。
クライアントサイドでの使用については、useLocale()
を参照してください。
リファレンス
戻り値
ユーザーの現在のロケールを表す文字列に解決される Promise です。例:'en-US'
。
フォールバック動作
サポートされていないロケールがリクエストされた場合、フォールバックロケールが選択されます。
例えば、サポートされていないロケールの場合に、 (1) ユーザーがブラウザの設定で複数の優先ロケールを設定していて、 (2) その中のいずれかのロケールがアプリケーションでサポートされている場合、 ロケールは最適な言語にフォールバックされます。
さらに、利用可能なフォールバックロケールが存在しない場合でも、
2つのロケールが同じ言語を共有している場合(例: en-US
と en-GB
)、
ロケールは同じ言語を共有するサポートされているロケールにフォールバックされます。
どちらの条件も満たされない場合は、デフォルトのロケールが使用されます。
サポートされているロケールの設定方法については、gt.config.json
ドキュメントをご覧ください。
例
基本的な使用方法
サーバーサイドレンダリング中にユーザーのロケールを取得します。
import { getLocale } from 'gt-next/server';
export default async function GetUserLocale() {
const locale = await getLocale();
return <p>User locale: {locale}</p>;
}
注意
getLocale()
関数は非同期であり、ロケールを取得するには await する必要があります。- これはサーバーサイドでの使用を目的としています。クライアントサイドのコンポーネントには
useLocale()
を参照してください。 - 返されるロケールは ロケール文字列 の形式に準拠しています。
次のステップ
- サポートされているロケールの設定方法については、withGTConfig() をご覧ください。
- フォールバックロケールの管理については、
getDefaultLocale()
を参照してください。
このガイドはいかがですか?