Dokumentation: getMultilingualUrls Funktion in intlayer
Beschreibung
Die Funktion getMultilingualUrls generiert eine Zuordnung von mehrsprachigen URLs, indem sie die gegebene URL mit jedem unterstützten Gebietsschema (Locale) präfixiert. Sie kann sowohl absolute als auch relative URLs verarbeiten und wendet das entsprechende Gebietsschema-Präfix basierend auf der bereitgestellten Konfiguration oder den Standardwerten an.
Parameter
url: string
- Beschreibung: Die ursprüngliche URL-Zeichenkette, die mit Gebietsschemata präfixiert werden soll.
- Typ: string
locales: Locales[]
- Beschreibung: Optionale Liste der unterstützten Gebietsschemata. Standardmäßig werden die im Projekt konfigurierten Gebietsschemata verwendet.
- Typ: Locales[]
- Standard: localesDefault
defaultLocale: Locales
- Beschreibung: Das Standard-Gebietsschema für die Anwendung. Standardmäßig wird das im Projekt konfigurierte Standard-Gebietsschema verwendet.
- Typ: Locales
- Standard: defaultLocaleDefault
prefixDefault: boolean
- Beschreibung: Gibt an, ob das Standard-Gebietsschema präfixiert werden soll. Standardmäßig wird der im Projekt konfigurierte Wert verwendet.
- Typ: boolean
- Standard: prefixDefaultDefault
Rückgabewerte
- Typ: IConfigLocales<string>
- Beschreibung: Ein Objekt, das jedes Gebietsschema seiner entsprechenden mehrsprachigen URL zuordnet.
Beispielverwendung
Relative URLs
import { getMultilingualUrls, Locales } from "intlayer";getMultilingualUrls( "/dashboard", [Locales.ENGLISH, Locales.FRENCH], Locales.ENGLISH, false);// Ausgabe: {// en: "/dashboard",// fr: "/fr/dashboard"// }
Absolute URLs
getMultilingualUrls( "https://example.com/dashboard", [Locales.ENGLISH, Locales.FRENCH], Locales.ENGLISH, true);// Ausgabe: {// en: "https://example.com/en/dashboard",// fr: "https://example.com/fr/dashboard"// }
Randfälle
Kein Gebietsschema-Segment:
- Die Funktion entfernt vorhandene Gebietsschema-Segmente aus der URL, bevor die mehrsprachigen Zuordnungen generiert werden.
Standard-Gebietsschema:
- Wenn prefixDefault auf false gesetzt ist, wird die URL für das Standard-Gebietsschema nicht präfixiert.
Nicht unterstützte Gebietsschemata:
- Es werden nur die Gebietsschemata berücksichtigt, die im Array locales bereitgestellt werden.
Verwendung in Anwendungen
In einer mehrsprachigen Anwendung ist die Konfiguration der Internationalisierungseinstellungen mit locales und defaultLocale entscheidend, um sicherzustellen, dass die richtige Sprache angezeigt wird. Unten finden Sie ein Beispiel, wie getMultilingualUrls in einer Anwendungskonfiguration verwendet werden kann:
import { Locales, type IntlayerConfig } from "intlayer";// Konfiguration für unterstützte Gebietsschemata und Standard-Gebietsschemaexport default { internationalization: { locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH], defaultLocale: Locales.ENGLISH, },} satisfies IntlayerConfig;export default config;
Die obige Konfiguration stellt sicher, dass die Anwendung ENGLISH, FRENCH und SPANISH als unterstützte Sprachen erkennt und ENGLISH als Fallback-Sprache verwendet.
Mit dieser Konfiguration kann die Funktion getMultilingualUrls dynamisch mehrsprachige URL-Zuordnungen basierend auf den unterstützten Gebietsschemata der Anwendung generieren:
getMultilingualUrls( "/dashboard", [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH], Locales.ENGLISH);// Ausgabe:// {// en: "/dashboard",// fr: "/fr/dashboard",// es: "/es/dashboard"// }getMultilingualUrls( "https://example.com/dashboard", [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH], Locales.ENGLISH, true);// Ausgabe:// {// en: "https://example.com/en/dashboard",// fr: "https://example.com/fr/dashboard",// es: "https://example.com/es/dashboard"// }
Durch die Integration von getMultilingualUrls können Entwickler konsistente URL-Strukturen über mehrere Sprachen hinweg beibehalten, was sowohl die Benutzererfahrung als auch die SEO verbessert.
Wenn Sie eine Idee haben, um diese Dokumentation zu verbessern, zögern Sie bitte nicht, durch das Einreichen eines Pull-Requests auf GitHub beizutragen.
GitHub-Link zur Dokumentation