作成:2025-11-16最終更新:2025-11-16
このドキュメントをあなたの好きなAIアシスタントに参照してくださいChatGPTClaudeDeepSeekGoogle AI modeGeminiPerplexityMistralGrok
このページとあなたの好きなAIアシスタントを使ってドキュメントを要約します
AIアシスタントにMCP Serverを追加
Intlayer MCPサーバーを統合することで、ChatGPT、DeepSeek、Cursor、VSCodeなどから直接ドキュメントを取得できます。
MCPサーバーのドキュメントを表示バージョン履歴
- 初回ドキュメント作成v7.1.02025/11/16
このページのコンテンツはAIを使用して翻訳されました。
英語の元のコンテンツの最新バージョンを見るこのドキュメントを編集
このドキュメントを改善するアイデアがある場合は、GitHubでプルリクエストを送信することで自由に貢献してください。
ドキュメントへのGitHubリンクコピー
ドキュメントのMarkdownをクリップボードにコピー
ドキュメント: intlayer の getPrefix 関数
説明
getPrefix 関数は、ルーティングモードの設定に基づいて指定されたロケールのURLプレフィックスを決定します。ロケールとデフォルトロケールを比較し、柔軟なURL構築のために3つの異なるプレフィックス形式を含むオブジェクトを返します。
主な特徴:
- 最初のパラメータとしてロケールを受け取る(必須)
- defaultLocale と mode を含むオプションの options オブジェクト
- prefix と localePrefix プロパティを持つオブジェクトを返す
- すべてのルーティングモードをサポート:prefix-no-default、prefix-all、no-prefix、および search-params
- ロケールプレフィックスを追加するタイミングを判断する軽量ユーティリティ
関数シグネチャ
getPrefix( locale: Locales, // 必須 options?: { // オプション defaultLocale?: Locales; mode?: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'; }): GetPrefixResulttype GetPrefixResult = { prefix: string; // 例: 'fr/' または '' localePrefix?: Locale; // 例: 'fr' または undefined}パラメータ
locale: Locales
- 説明: プレフィックスを生成する対象のロケール。値が偽(undefined、null、空文字列)の場合、関数は空文字列を返します。
- 型: Locales
- 必須: はい
options?: object
- 説明: プレフィックス判定のための設定オブジェクト。
- 型: object
必須: いいえ(オプション)
options.defaultLocale?: Locales
- 説明: アプリケーションのデフォルトロケール。指定がない場合は、プロジェクト設定で構成されたデフォルトロケールを使用します。
- 型: Locales
- デフォルト: プロジェクト設定
options.mode?: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'
- 説明: ロケール処理のためのURLルーティングモード。指定しない場合は、プロジェクト設定で構成されたモードが使用されます。
- 型: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'
- デフォルト: プロジェクト設定
- モード:
- prefix-no-default: ロケールがデフォルトロケールと一致する場合、空文字列を返します
- prefix-all: デフォルトを含むすべてのロケールに対してプレフィックスを返します
- no-prefix: 空文字列を返します(URLにプレフィックスなし)
- search-params: 空文字列を返します(クエリパラメータにロケールを含む)
戻り値
- 型: GetPrefixResult
- 説明: 3つの異なるプレフィックス形式を含むオブジェクト:
- prefix: 後続のスラッシュを含むパスのプレフィックス(例: 'fr/', '')
- localePrefix: スラッシュなしのロケール識別子(例: 'fr', undefined)
使用例
基本的な使用法
import { getPrefix, Locales } from "intlayer";// 英語ロケールのプレフィックスをチェックgetPrefix(Locales.ENGLISH, { defaultLocale: Locales.ENGLISH, mode: "prefix-all",});// 戻り値: { prefix: 'en/', localePrefix: 'en' }// フランス語ロケールのプレフィックスをチェックgetPrefix(Locales.FRENCH, { defaultLocale: Locales.ENGLISH, mode: "prefix-no-default",});// 戻り値: { prefix: 'fr/', localePrefix: 'fr' }異なるルーティングモード
import { getPrefix, Locales } from "intlayer";// prefix-all: 常にプレフィックスを返すgetPrefix(Locales.ENGLISH, { mode: "prefix-all", defaultLocale: Locales.ENGLISH,});// 戻り値: { prefix: '/en', localePrefix: 'en' }// prefix-no-default: ロケールがデフォルトと一致する場合はプレフィックスなしgetPrefix(Locales.ENGLISH, { mode: "prefix-no-default", defaultLocale: Locales.ENGLISH,});// 戻り値: { prefix: '', localePrefix: undefined }javascript;// prefix-no-default: ロケールがデフォルトと異なる場合にプレフィックスを返すgetPrefix(Locales.FRENCH, { mode: "prefix-no-default", defaultLocale: Locales.ENGLISH,});// 戻り値: { prefix: 'fr/', localePrefix: 'fr' }// no-prefix と search-params: プレフィックスを返さないgetPrefix(Locales.ENGLISH, { mode: "no-prefix" });// 戻り値: { prefix: '', localePrefix: undefined }getPrefix(Locales.ENGLISH, { mode: "search-params" });// 戻り値: { prefix: '', localePrefix: undefined }実用例
import { getPrefix, Locales } from "intlayer";// 特定のロケールに適したプレフィックスでURLを構築するconst locale = Locales.FRENCH;const { prefix, localePrefix } = getPrefix(locale, { defaultLocale: Locales.ENGLISH, mode: "prefix-no-default",});// パス構築にprefixを使用const url1 = `/${prefix}about`.replace(/\/+/g, "/");// 結果: "/fr/about"// locale識別にlocalePrefixを使用console.log(`現在のロケール: ${localePrefix}`);// 出力: "現在のロケール: fr"関連関数
- getLocalizedUrl: 特定のロケール用のローカライズされたURLを生成
- getMultilingualUrls: 設定されたすべてのロケール用のURLを生成
TypeScript
type GetPrefixResult = { prefix: string; // 末尾にスラッシュが付いたパスのプレフィックス(例: 'fr/' または '') localePrefix?: Locale; // スラッシュなしのロケール識別子(例: 'fr' または undefined)};function getPrefix( locale: Locales, options?: { defaultLocale?: Locales; mode?: "prefix-no-default" | "prefix-all" | "no-prefix" | "search-params"; }): GetPrefixResult;