Config

loadDictionary()

loadDictionary() 関数のAPIリファレンス。

概要

loadDictionary() は、指定したロケールの翻訳用jsonファイルを読み込みます。

この関数は、gt-react を単体のi18nライブラリとして使用したい方のために用意されています。

この関数は主に、既存のi18nプロジェクトをGeneral Translationに移行しつつ、既存の翻訳を保持したい場合に使用されます。

複数の翻訳が存在する場合、loadDictionary() で読み込まれた辞書の翻訳が常に他の翻訳より優先されます。 loadDictionary() は、文字列翻訳を含むJSONファイルのみをサポートします。

リファレンス

パラメーター

PropTypeDefault
locale?
string
-

説明

説明
locale翻訳を読み込む対象のロケール。

戻り値

指定されたロケールのIDと翻訳のマッピングを含む Promise<any> が解決されます。


セットアップ

通常、辞書は ./public/locales ディレクトリから読み込みます。

loadDictionary() をファイル内で定義します。 この関数が、指定されたロケールの翻訳が含まれるオブジェクトへ解決される Promise を返すことを確認してください。

src/loadDictionary.js
export default async function loadDictionary(locale) {
  const translations = await import(`../public/locales/${locale}.json`);
  return translations.default;
}

次に、それを <GTProvider> コンポーネントに渡します:

src/App.js
import { GTProvider } from 'gt-react';
import loadDictionary from './loadDictionary';

<GTProvider loadDictionary={loadDictionary}>
  <App />
</GTProvider>

質問: loadTranslations()loadDictionary() の違いは何ですか?

  • loadTranslations() は、アプリの翻訳を取得するためのカスタム読み込み動作を定義するために使用します。 これは、CDN やデータベース、またはアプリのバンドルから翻訳を取得する場合などです。 これらは通常、cli ツールによって管理される機械生成の翻訳であり、編集にはあまり適していません。
  • loadDictionary() は、gt-react をスタンドアロンライブラリとして実装する場合に使用します。 ユーザー自身が翻訳を用意し、翻訳インフラは使用しません。

注意

  • loadDictionary() は、アプリ用のカスタム翻訳を読み込むために使用されます。
  • loadDictionary() で読み込まれた辞書は、loadTranslations() で読み込まれた翻訳よりも優先されます。

次のステップ

  • 独自の翻訳を書きたい場合は、カスタム翻訳をご覧ください。
  • カスタム翻訳ローダーの作成方法については、loadTranslations()をご参照ください。

このガイドはいかがですか?