Posez votre question et obtenez un résumé du document en referencant cette page et le Provider AI de votre choix
Ce document n'est pas à jour, la version de base a été mise à jour le 16 novembre 2025.
Aller à la doc anglaiseHistorique des versions
- "Historique initial"v5.5.1029/06/2025
Le contenu de cette page a été traduit à l'aide d'une IA.
Voir la dernière version du contenu original en anglaisSi vous avez une idée d’amélioration pour améliorer cette documentation, n’hésitez pas à contribuer en submitant une pull request sur GitHub.
Lien GitHub de la documentationCopier le Markdown du doc dans le presse-papiers
Documentation : Fonction getLocalizedUrl dans intlayer
Description
La fonction getLocalizedUrl génère une URL localisée en préfixant l'URL donnée avec la locale spécifiée. Elle gère à la fois les URLs absolues et relatives, en s'assurant que le bon préfixe de locale est appliqué en fonction de la configuration.
Caractéristiques principales :
- Seulement 2 paramètres sont requis :
urletcurrentLocale - Objet
optionsoptionnel aveclocales,defaultLocale, etmode - Utilise la configuration d'internationalisation de votre projet comme valeurs par défaut
- Peut être utilisé avec des paramètres minimaux pour les cas simples ou entièrement personnalisé pour les scénarios complexes
- Supporte plusieurs modes de routage :
prefix-no-default,prefix-all,no-prefix, etsearch-params
Signature de fonction
Copier le code dans le presse-papiers
Paramètres
Paramètres obligatoires
url: string- Description: La chaîne d'URL originale à préfixer avec une locale.
- Type:
string - Required: Yes
currentLocale: Locales- Description: La locale actuelle pour laquelle l'URL est localisée.
- Type:
Locales - Required: Yes
Paramètres Optionnels
options?: object- Description: Objet de configuration pour le comportement de localisation des URL.
- Type:
object Required: Non (Optionnel)
options.locales?: Locales[]- Description: Tableau des locales supportées. Si non fourni, utilise les locales configurées dans la configuration de votre projet.
- Type:
Locales[] - Default:
Project Configuration
options.defaultLocale?: Locales- Description: La locale par défaut pour l'application. Si non fournie, utilise la locale par défaut configurée dans la configuration de votre projet.
- Type:
Locales - Default:
Project Configuration
options.mode?: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'- Description: Le mode de routage des URL pour la gestion des locales. Si non fourni, utilise le mode configuré dans la configuration de votre projet.
- Type:
'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params' - Default:
Project Configuration - Modes:
prefix-no-default: Aucun préfixe pour la locale par défaut, préfixe pour toutes les autresprefix-all: Préfixe pour toutes les locales, y compris la locale par défautno-prefix: Aucun préfixe de locale dans l'URLsearch-params: Utiliser les paramètres de requête pour la locale (par ex.,?locale=fr)
Retour
- Type :
string - Description : L'URL localisée pour la locale spécifiée.
Exemple d'utilisation
Utilisation basique (Paramètres obligatoires uniquement)
Lorsque vous avez configuré votre projet avec les paramètres d'internationalisation, vous pouvez utiliser la fonction avec juste les paramètres obligatoires :
Copier le code dans le presse-papiers
import { getLocalizedUrl, Locales } from "intlayer";
// Utilise la configuration de votre projet pour les locales, defaultLocale et mode
getLocalizedUrl("/about", Locales.FRENCH);
// Output: "/fr/about" (en supposant que le français est supporté et que le mode est 'prefix-no-default')
getLocalizedUrl("/about", Locales.ENGLISH);
// Output: "/about" ou "/en/about" (en fonction de votre paramètre de mode)
Utilisation avancée (avec paramètres optionnels)
Vous pouvez remplacer la configuration par défaut en fournissant le paramètre optionnel options :
URLs relatives
Copier le code dans le presse-papiers
import { getLocalizedUrl, Locales } from "intlayer";
getLocalizedUrl(
"/about",
Locales.FRENCH,
[Locales.ENGLISH, Locales.FRENCH],
Locales.ENGLISH,
false
);
// Résultat : "/fr/about" pour la locale française
// Résultat : "/about" pour la locale par défaut (anglais)
Remplacement Partiel de la Configuration
Vous pouvez également fournir uniquement certains paramètres optionnels. La fonction utilisera la configuration de votre projet pour tous les paramètres que vous ne spécifiez pas :
Copier le code dans le presse-papiers
URLs absolues
Copier le code dans le presse-papiers
Locale non prise en charge
Copier le code dans le presse-papiers
Cas particuliers
Pas de segment de locale :
- Si l'URL ne contient aucun segment de locale, la fonction préfixe en toute sécurité la locale appropriée.
Locale par défaut :
- Lorsque
prefixDefaultestfalse, la fonction ne préfixe pas l'URL pour la locale par défaut.
- Lorsque
Locales non supportées :
- Pour les locales non listées dans
locales, la fonction n'applique aucun préfixe.
- Pour les locales non listées dans
Modes de routage :
'prefix-no-default': La locale par défaut n'a pas de préfixe, les autres en ont (par ex.,/about,/fr/about)'prefix-all': Toutes les locales ont des préfixes (par ex.,/en/about,/fr/about)'no-prefix': Pas de préfixes de locale dans les URLs (locale gérée ailleurs)'search-params': Locale spécifiée via paramètre de requête (par ex.,/about?locale=fr)
Utilisation dans les applications
Dans une application multilingue, configurer les paramètres d'internationalisation avec locales et defaultLocale est essentiel pour garantir que la langue correcte soit affichée. Voici un exemple de la manière dont getLocalizedUrl peut être utilisé dans la configuration d'une application :
Copier le code dans le presse-papiers
import { Locales, type IntlayerConfig } from "intlayer";
// Configuration des locales supportées et de la locale par défaut
export default {
internationalization: {
locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],
defaultLocale: Locales.ENGLISH,
},
} satisfies IntlayerConfig;
export default config;
La configuration ci-dessus garantit que l'application reconnaît ENGLISH, FRENCH et SPANISH comme langues supportées et utilise ENGLISH comme langue de repli.
En utilisant cette configuration, la fonction getLocalizedUrl peut générer dynamiquement des URLs localisées en fonction de la préférence linguistique de l'utilisateur :
Copier le code dans le presse-papiers
En intégrant getLocalizedUrl, les développeurs peuvent maintenir des structures d'URL cohérentes à travers plusieurs langues, améliorant ainsi l'expérience utilisateur et le référencement SEO.
