作成:2026-09-19最終更新:2026-09-19
このドキュメントをあなたの好きなAIアシスタントに参照してくださいChatGPTClaudeDeepSeekGoogle AI modeGeminiPerplexityMistralGrok
このページとあなたの好きなAIアシスタントを使ってドキュメントを要約します
バージョン履歴
- "初期ドキュメント"v9.5.52026/9/19
このページのコンテンツはAIを使用して翻訳されました。
英語の元のコンテンツの最新バージョンを見るこのドキュメントを編集
このドキュメントを改善するアイデアがある場合は、GitHubでプルリクエストを送信することで自由に貢献してください。
ドキュメントへのGitHubリンクコピー
ドキュメントのMarkdownをクリップボードにコピー
useLocale フックドキュメント
astro-intlayer の useLocale フックは、Astro アプリケーションにおいて現在のリクエストロケール、設定されたデフォルトロケール、およびすべての利用可能なロケールへのアクセスを提供します。
サーバーレンダリングされた .astro フロントマターとクライアント側の <script> ブロックの両方で一貫して動作します。
使用方法
コンポーネントフロントマター内(サーバーレンダリング)
src/layouts/Layout.astro
コードをコピー
コードをクリップボードにコピー
クライアント <script> 内(インタラクティブ)
src/components/LocaleSwitcher.astro
コードをコピー
コードをクリップボードにコピー
戻り値
このフックは UseLocaleResult 型のオブジェクトを返します。
テーブルのすべての内容を表示
テーブルをモーダルで開き、すべてのデータを明確に表示
| プロパティ | タイプ | 説明 |
|---|---|---|
locale | DeclaredLocales | アクティブなロケール。 |
defaultLocale | DeclaredLocales | intlayer.config.ts で設定されたデフォルトのフォールバックロケール。 |
availableLocales | DeclaredLocales[] | プロジェクト用に設定されたすべてのサポートされているロケールの配列。 |
setLocale | (locale: LocalesValues) => void | ロケールを更新する関数。(クライアント <script> でインタラクティブに動作し、SSR では警告)。 |
subscribe | (callback: () => void) => () => void | クライアント側のロケール変更を購読します。 |
サーバーとクライアントの動作の違い
- SSR / サーバーレンダリング中: リクエストは固定パラメーターで1回レンダリングされます。サーバーレンダリング中に
setLocale()を呼び出しても効果はなく警告が出力されます。ロケールの切り替えはクライアントで行うか、目的のロケール URL に移動して行う必要があります。 - クライアントスクリプト内:
setLocaleはクライアントストアを更新し、Intlayer 設定に従って永続化されたクッキーまたはローカルストレージを更新します。
