Zadaj pytanie i otrzymaj streszczenie dokumentu, odwołując się do tej strony i wybranego dostawcy AI
Dzięki integracji serwera Intlayer MCP z ulubionym asystentem AI możesz uzyskać dostęp do całej dokumentacji bezpośrednio z ChatGPT, DeepSeek, Cursor, VSCode itp.
Zobacz dokumentację serwera MCPHistoria wersji
- Pierwotna dokumentacjav7.1.016.11.2025
Treść tej strony została przetłumaczona przy użyciu sztucznej inteligencji.
Zobacz ostatnią wersję oryginalnej treści w języku angielskimJeśli masz pomysł na ulepszenie tej dokumentacji, zachęcamy do przesłania pull requesta na GitHubie.
Link do dokumentacji na GitHubieKopiuj dokument Markdown do schowka
Dokumentacja: funkcja getPrefix w intlayer
Opis
Funkcja getPrefix określa prefiks URL dla podanego locale na podstawie konfiguracji trybu routingu. Porównuje locale z domyślnym locale i zwraca obiekt zawierający trzy różne formaty prefiksów dla elastycznego budowania URL.
Kluczowe cechy:
- Przyjmuje locale jako pierwszy parametr (wymagany)
- Opcjonalny obiekt options z defaultLocale i mode
- Zwraca obiekt z właściwościami prefix i localePrefix
- Obsługuje wszystkie tryby routingu: prefix-no-default, prefix-all, no-prefix oraz search-params
- Lekka funkcja pomocnicza do określania, kiedy dodać prefiksy locale
Sygnatura funkcji
getPrefix( locale: Locales, // Wymagany options?: { // Opcjonalny defaultLocale?: Locales; mode?: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'; }): GetPrefixResulttype GetPrefixResult = { prefix: string; // np. 'fr/' lub '' localePrefix?: Locale; // np. 'fr' lub undefined}Parametry
locale: Locales
- Opis: Locale, dla którego generowany jest prefiks. Jeśli wartość jest fałszywa (undefined, null, pusty ciąg znaków), funkcja zwraca pusty ciąg znaków.
- Typ: Locales
- Wymagany: Tak
options?: object
- Opis: Obiekt konfiguracyjny do określania prefiksu.
- Typ: object
Wymagany: Nie (Opcjonalny)
options.defaultLocale?: Locales
- Opis: Domyślne locale aplikacji. Jeśli nie zostanie podane, używane jest domyślne locale skonfigurowane w Twoim projekcie.
- Typ: Locales
- Domyślnie: Konfiguracja projektu
options.mode?: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'
- Opis: Tryb routingu URL dla obsługi locale. Jeśli nie zostanie podany, używany jest tryb skonfigurowany w Twoim projekcie.
- Typ: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'
- Domyślnie: Konfiguracja projektu
- Tryby:
- prefix-no-default: Zwraca pusty ciąg, gdy locale odpowiada domyślnemu locale
- prefix-all: Zwraca prefiks dla wszystkich locale, w tym domyślnego
- no-prefix: Zwraca pusty ciąg (brak prefiksu w URL)
- search-params: Zwraca pusty ciąg (locale w parametrach zapytania)
Zwraca
- Typ: GetPrefixResult
- Opis: Obiekt zawierający trzy różne formaty prefiksu:
- prefix: Prefiks ścieżki z ukośnikiem na końcu (np. 'fr/', '')
- localePrefix: Identyfikator locale bez ukośników (np. 'fr', undefined)
Przykład użycia
Podstawowe użycie
import { getPrefix, Locales } from "intlayer";// Sprawdź prefiks dla locale angielskiegogetPrefix(Locales.ENGLISH, { defaultLocale: Locales.ENGLISH, mode: "prefix-all",});// Zwraca: { prefix: 'en/', localePrefix: 'en' }// Sprawdź prefiks dla locale francuskiegogetPrefix(Locales.FRENCH, { defaultLocale: Locales.ENGLISH, mode: "prefix-no-default",});// Zwraca: { prefix: 'fr/', localePrefix: 'fr' }Różne tryby routingu
import { getPrefix, Locales } from "intlayer";// prefix-all: Zawsze zwraca prefiksgetPrefix(Locales.ENGLISH, { mode: "prefix-all", defaultLocale: Locales.ENGLISH,});// Zwraca: { prefix: '/en', localePrefix: 'en' }// prefix-no-default: Brak prefiksu, gdy locale jest zgodne z domyślnymgetPrefix(Locales.ENGLISH, { mode: "prefix-no-default", defaultLocale: Locales.ENGLISH,});// Zwraca: { prefix: '', localePrefix: undefined }// prefix-no-default: Zwraca prefiks, gdy locale różni się od domyślnegogetPrefix(Locales.FRENCH, { mode: "prefix-no-default", defaultLocale: Locales.ENGLISH,});// Zwraca: { prefix: 'fr/', localePrefix: 'fr' }// no-prefix & search-params: Nigdy nie zwraca prefiksugetPrefix(Locales.ENGLISH, { mode: "no-prefix" });// Zwraca: { prefix: '', localePrefix: undefined }getPrefix(Locales.ENGLISH, { mode: "search-params" });// Zwraca: { prefix: '', localePrefix: undefined }Praktyczny przykład
import { getPrefix, Locales } from "intlayer";// Budowanie URL z odpowiednim prefiksem dla konkretnego localeconst locale = Locales.FRENCH;const { prefix, localePrefix } = getPrefix(locale, { defaultLocale: Locales.ENGLISH, mode: "prefix-no-default",});// Używanie prefiksu do konstrukcji ścieżkiconst url1 = `/${prefix}about`.replace(/\/+/g, "/");// Wynik: "/fr/about"// Używanie localePrefix do identyfikacji localeconsole.log(`Aktualne locale: ${localePrefix}`);// Wyjście: "Aktualne locale: fr"Powiązane funkcje
- getLocalizedUrl: Generuje zlokalizowany URL dla konkretnego locale
- getMultilingualUrls: Generuje URL-e dla wszystkich skonfigurowanych locale
TypeScript
type GetPrefixResult = { prefix: string; // Prefiks ścieżki z końcowym ukośnikiem (np. 'fr/' lub '') localePrefix?: Locale; // Identyfikator locale bez ukośników (np. 'fr' lub undefined)};function getPrefix( locale: Locales, options?: { defaultLocale?: Locales; mode?: "prefix-no-default" | "prefix-all" | "no-prefix" | "search-params"; }): GetPrefixResult;