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開発者は、選択したライブラリで動作するキー構造を決める必要があります。ここで説明するパターンは、すべての翻訳を事前にロードする(パフォーマンスへの影響)や単一のフラットファイルを使用する(メンテナンスの悪夢)などの一般的なミスを防ぎます。

試してみる — i18n Key Generator

フルツールを開く