Reactアプリケーション向けi18nキー構造
react-i18nextとnext-intlを使用したReactアプリケーションのi18n翻訳キー構造化方法。名前空間分割、遅延ロード、TypeScript型安全性、コンポーネントレベルの翻訳パターンをカバーします。
Framework Guide
詳細な説明
React向けi18nキー構造
Reactアプリケーションは通常、国際化にreact-i18nextまたはnext-intlを使用します。両ライブラリともドット記法キーとネストされたJSON翻訳ファイルをサポートしていますが、キー整理のパターンは異なります。
react-i18nextキー構造
react-i18nextは別のJSONファイルにマッピングされる名前空間を使用します。
next-intlキー構造
next-intlは名前空間のようなトップレベルキーを持つロケールごとの単一メッセージオブジェクトを使用します。
TypeScript型安全性
両ライブラリとも型付きキーをサポートしています。react-i18nextでは、リソースタイプを宣言することで、すべての翻訳キーに対するオートコンプリートとコンパイル時チェックが得られます。
名前空間の遅延ロード
大規模アプリケーションでは、名前空間をオンデマンドでロードします。これにより、現在のページに必要な翻訳のみをロードし、初期バンドルサイズを削減します。
ユースケース
初めてi18nを設定するReact開発者は、選択したライブラリで動作するキー構造を決める必要があります。ここで説明するパターンは、すべての翻訳を事前にロードする(パフォーマンスへの影響)や単一のフラットファイルを使用する(メンテナンスの悪夢)などの一般的なミスを防ぎます。