Zadaj pytanie i otrzymaj streszczenie dokumentu, odwołując się do tej strony i wybranego dostawcy AI
Historia wersji
- "Pierwotna dokumentacja"v7.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 angielskimIf 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 doc Markdown to clipboard
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
optionszdefaultLocaleimode - Zwraca obiekt z właściwościami
prefixilocalePrefix - Obsługuje wszystkie tryby routingu:
prefix-no-default,prefix-all,no-prefixorazsearch-params - Lekka funkcja pomocnicza do określania, kiedy dodać prefiksy locale
Sygnatura funkcji
Skopiuj kod do schowka
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 localeprefix-all: Zwraca prefiks dla wszystkich locale, w tym domyślnegono-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
Skopiuj kod do schowka
import { getPrefix, Locales } from "intlayer";
// Sprawdź prefiks dla locale angielskiego
getPrefix(Locales.ENGLISH, {
defaultLocale: Locales.ENGLISH,
mode: "prefix-all",
});
// Zwraca: { prefix: 'en/', localePrefix: 'en' }
// Sprawdź prefiks dla locale francuskiego
getPrefix(Locales.FRENCH, {
defaultLocale: Locales.ENGLISH,
mode: "prefix-no-default",
});
// Zwraca: { prefix: 'fr/', localePrefix: 'fr' }Różne tryby routingu
Skopiuj kod do schowka
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
Skopiuj kod do schowka
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 localegetMultilingualUrls: Generuje URL-e dla wszystkich skonfigurowanych locale
TypeScript
Skopiuj kod do schowka
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;