Documentation: getTranslationContent 関数 in intlayer
Description
getTranslationContent 関数は、カスタマイズ可能な言語コンテンツのセットから特定のロケールに対応するコンテンツを取得します。指定されたロケールが見つからない場合、プロジェクトで設定されたデフォルトロケールのコンテンツが返されます。
Parameters
languageContent: CustomizableLanguageContent<Content>
- Description: 様々なロケールの翻訳を含むオブジェクトです。各キーはロケールを表し、その値は対応するコンテンツです。
- Type: CustomizableLanguageContent<Content>
- Content は任意の型で、デフォルトは string です。
locale: Locales
- Description: コンテンツを取得するためのロケールです。
- Type: Locales
Returns
- Type: Content
- Description: 指定されたロケールに対応するコンテンツです。ロケールが見つからない場合は、デフォルトロケールのコンテンツが返されます。
Example Usage
Basic Usage
typescript
import { getTranslationContent, Locales } from "intlayer";const content = getTranslationContent( { en: "Hello", fr: "Bonjour", }, Locales.ENGLISH);console.log(content); // 出力: "Bonjour"
Missing Locale:
typescript
import { getTranslationContent, Locales } from "intlayer";const content = getTranslationContent( { en: "Hello", fr: "Bonjour", }, Locales.SPANISH);console.log(content); // 出力: "Hello"(デフォルトロケールのコンテンツ)
Using Custom Content Types:
typescript
import { getTranslationContent, Locales } from "intlayer";const customContent = getTranslationContent<Record<string, string>>( { en: { greeting: "Hello" }, fr: { greeting: "Bonjour" }, }, Locales.FRENCH);console.log(customContent.greeting); // 出力: "Bonjour"
Edge Cases
- Locale Not Found:
- languageContent に locale が見つからない場合、関数はデフォルトロケールのコンテンツを返します。
Incomplete Language Content:
- ロケールが部分的に定義されている場合、関数はコンテンツをマージしません。指定されたロケールの値を厳密に取得するか、デフォルトにフォールバックします。
TypeScript Enforcement:
- languageContent のロケールがプロジェクトの設定と一致しない場合、TypeScript は必要なすべてのロケールが定義されていることを強制し、コンテンツが完全で型安全であることを保証します。
このドキュメントを改善するアイデアがある場合は、GitHubでプルリクエストを送信することで自由に貢献してください。
ドキュメントへのGitHubリンク