생성:2025-11-16마지막 업데이트:2025-11-16
이 문서를 원하는 AI 어시스턴트에 참조하세요ChatGPTClaudeDeepSeekGoogle AI modeGeminiPerplexityMistralGrok
이 페이지와 원하는 AI 어시스턴트를 사용하여 문서를 요약합니다
버전 기록
- "초기 문서화"v7.1.02025. 11. 16.
이 페이지의 콘텐츠는 AI를 사용하여 번역되었습니다.
영어 원본 내용의 최신 버전을 보기Edit this doc
If you have an idea for improving this documentation, please feel free to contribute by submitting a pull request on GitHub.
GitHub link to the documentationCopy
Copy doc Markdown to clipboard
문서: intlayer의 getPrefix 함수
설명
getPrefix 함수는 라우팅 모드 설정에 따라 주어진 로케일의 URL 접두사를 결정합니다. 로케일을 기본 로케일과 비교하고, 유연한 URL 구성을 위해 세 가지 다른 접두사 형식을 포함하는 객체를 반환합니다.
주요 기능:
- 첫 번째 매개변수로 로케일을 받음 (필수)
defaultLocale과mode를 포함하는 선택적options객체prefix와localePrefix속성을 가진 객체를 반환- 모든 라우팅 모드 지원:
prefix-no-default,prefix-all,no-prefix,search-params - 로케일 접두사를 추가할 시점을 결정하는 가벼운 유틸리티
함수 시그니처
typescript
코드 복사
코드를 클립보드에 복사
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- 설명: 접두사를 생성할 로케일입니다. 값이 falsy(정의되지 않음, 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 - 설명: 세 가지 다른 접두사 형식을 포함하는 객체:
prefix: 후행 슬래시가 포함된 경로 접두사 (예:'fr/','')localePrefix: 슬래시가 없는 로케일 식별자 (예:'fr',undefined)
사용 예제
기본 사용법
typescript
코드 복사
코드를 클립보드에 복사
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' }다양한 라우팅 모드
typescript
코드 복사
코드를 클립보드에 복사
import { getPrefix, Locales } from "intlayer";// prefix-all: 항상 prefix를 반환getPrefix(Locales.ENGLISH, { mode: "prefix-all", defaultLocale: Locales.ENGLISH,});// 반환: { prefix: '/en', localePrefix: 'en' }// prefix-no-default: 로케일이 기본값과 일치할 때는 prefix 없음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 }실용적인 예제
typescript
코드 복사
코드를 클립보드에 복사
import { getPrefix, Locales } from "intlayer";// 특정 로케일에 적합한 접두사를 사용하여 URL을 생성합니다.const locale = Locales.FRENCH;const { prefix, localePrefix } = getPrefix(locale, { defaultLocale: Locales.ENGLISH, mode: "prefix-no-default",});typescript;// 경로 구성을 위한 prefix 사용const url1 = `/${prefix}about`.replace(/\/+/g, "/");// 결과: "/fr/about"// locale 식별을 위한 localePrefix 사용console.log(`현재 로케일: ${localePrefix}`);// 출력: "현재 로케일: fr"관련 함수
getLocalizedUrl: 특정 로케일에 대한 현지화된 URL 생성getMultilingualUrls: 구성된 모든 로케일에 대한 URL 생성
TypeScript
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;