AccueilBac à sableShowcaseAppDocBlog
    • Englishanglais
      EN
    • русскийrusse
      RU
    • 日本語japonais
      JA
    • françaisfrançais
      FR
    • 한국어coréen
      KO
    • 中文chinois
      ZH
    • españolespagnol
      ES
    • Deutschallemand
      DE
    • العربيةarabe
      AR
    • italianoitalien
      IT
    • British Englishanglais britannique
      EN-GB
    • portuguêsportugais
      PT
    • हिन्दीhindi
      HI
    • Türkçeturc
      TR
    • polskipolonais
      PL
    • Indonesiaindonésien
      ID
    • Tiếng Việtvietnamien
      VI
    • українськаukrainien
      UK
    /
    Filtrer la documentation par framework
    Alt+←
    Pourquoi Intlayer ?
    Commencer
    Concept
    • Comment Intlayer fonctionne
    • Configuration
    • TestFillBuildWatchExtractLoginPushPullConfigurationListVersionEditorLiveDebugDoc ReviewDoc TranslateSDK
    • Éditeur visuel
    • CMS
    • Intégration CI/CD
    • TraductionPlurielÉnumérationConditionGenreInsertionFichierImbricationMarkdownHTMLRécupération de fonction
    • Fichier par locale
    • Compilateur
    • Remplissage automatique
    • Tests
    • Optimisation de bundle
    Environnement
    • Next.js 14 et App Router
      Next.js 15
      Next.js sans locale URL
      Next.js et Page Router
      Compiler
    • Tanstack Start Solid
    • Astro et React
      Astro et Svelte
      Astro et Vue
      Astro et Solid
      Astro et Preact
      Astro et Lit
      Astro et Vanilla JS
    • React Router v7
      React Router v7 (fs-routes)
      Compiler
    • Nuxt et Vue
    • Vite et Solid
    • SvelteKit
    • Vite et Preact
    • Vite et Vanilla JS
    • Vite et Lit
    • Angular 19 (Webpack)
      Analog
    • React CRA
    • React Native et Expo
    • Express.js
      NestJS
      Fastify
      Hono
      Adonis
    • Lynx et React
    Plugins
    • JSON
    • gettext (.po)
    Extension VS Code
    Agent
    • Serveur MCP
    • Compétences de l’agent
    Versions
    • v8
    • v7
    • v6
    Benchmark
    • Next.js
    • TanStack
    • Vue
    • Solid
    • Svelte
    Blog
    Poser une question
    1. Documentation
    2. Packages
    3. Next intlayer
    4. UseLocale
    Création:2024-08-11Dernière mise à jour:2026-01-26
    Référencez cette doc à votre assistant AI préféré
    ChatGPT
    Claude
    DeepSeek
    Google AI mode
    Gemini
    Perplexity
    Mistral
    Grok

    Posez votre question et obtenez un résumé du document en referencant cette page et le Provider AI de votre choix

    Historique des versions

    1. "Valeur par défaut de `onLocaleChange` définie sur `replace`"
      v8.0.026/01/2026
    2. "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 anglais
    Modifier cette documentation

    Si 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 documentation
    Copier

    Copier le Markdown du doc dans le presse-papiers

    Intégration Next.js : Documentation du Hook useLocale pour next-intlayer

    Cette section offre une documentation détaillée sur le hook useLocale conçu pour les applications Next.js au sein de la bibliothèque next-intlayer. Il est conçu pour gérer efficacement les changements de langue et le routage.

    Importer useLocale dans Next.js

    Pour utiliser le hook useLocale dans votre application Next.js, importez-le comme indiqué ci-dessous :

    javascript
    Copier le code

    Copier le code dans le presse-papiers

    import { useLocale } from "next-intlayer"; // Utilisé pour gérer les langues et le routage dans Next.js

    Utilisation

    Voici comment implémenter le hook useLocale dans un composant Next.js :

    src/components/LocaleSwitcher.tsx
    Copier le code

    Copier le code dans le presse-papiers

    "use client";
    
    import type { FC } from "react";
    import { Locales } from "intlayer";
    import { useLocale } from "next-intlayer";
    
    const LocaleSwitcher: FC = () => {
      const { locale, defaultLocale, availableLocales, setLocale } = useLocale();
    
      return (
        <div>
          <h1>Langue actuelle : {locale}</h1>
          <p>Langue par défaut : {defaultLocale}</p>
          <select value={locale} onChange={(e) => setLocale(e.target.value)}>
            {availableLocales.map((loc) => (
              <option key={loc} value={loc}>
                {loc}
              </option>
            ))}
          </select>
        </div>
      );
    };

    Paramètres

    Le hook useLocale accepte les paramètres suivants :

    • onLocaleChange : Une chaîne de caractères qui détermine comment l'URL doit être mise à jour lorsque la langue change. Elle peut être "replace", "push" ou "none".

      Prenons un exemple :

      1. Vous êtes sur /fr/home
      2. Vous naviguez vers /fr/about
      3. Vous changez la langue pour /es/about
      4. Vous cliquez sur le bouton "retour" du navigateur

      Le comportement différera selon la valeur de onLocaleChange :

      • "replace" (par défaut) : Remplace l'URL actuelle par la nouvelle URL localisée, et définit le cookie. -> Le bouton "retour" ira vers /es/home
      • "push" : Ajoute la nouvelle URL localisée à l'historique du navigateur, et définit le cookie. -> Le bouton "retour" ira vers /fr/about
      • "none" : Met uniquement à jour la langue dans le contexte client, et définit le cookie, sans changer l'URL. -> Le bouton "retour" ira vers /fr/home
      • (locale) => void : Définit le cookie et déclenche une fonction personnalisée qui sera appelée lorsque la langue change.

        L'option undefined est le comportement par défaut car nous recommandons d'utiliser le composant Link pour naviguer vers la nouvelle langue. Exemple :

        tsx
        Copier le code

        Copier le code dans le presse-papiers

        <Link href="/es/about" replace>  À propos</Link>

    Valeurs de retour

    • locale : La langue actuelle telle que définie dans le contexte React.
    • defaultLocale : La langue principale définie dans la configuration.
    • availableLocales : Une liste de toutes les langues disponibles telles que définies dans la configuration.
    • setLocale : Une fonction pour changer la langue de l'application et mettre à jour l'URL en conséquence. Elle gère les règles de préfixe, que ce soit pour ajouter ou non la langue au chemin en fonction de la configuration. Utilise useRouter de next/navigation pour les fonctions de navigation comme push et refresh.
    • pathWithoutLocale : Une propriété calculée qui retourne le chemin sans la langue. Elle est utile pour comparer les URLs. Par exemple, si la langue actuelle est fr, et l'URL est fr/my_path, le chemin sans langue est /my_path. Utilise usePathname de next/navigation pour obtenir le chemin actuel.

    Conclusion

    Le hook useLocale de next-intlayer est un outil essentiel pour gérer les langues dans les applications Next.js. Il offre une approche intégrée pour adapter votre application à plusieurs langues en gérant de manière transparente le stockage de la langue, la gestion de l'état et les modifications d'URL.

    Pourquoi Intlayer ?
    Alt+→

    Dans cette page

      Les discussions sont anonymes et régulièrement analysées pour traiter les problèmes fréquents. N'hésitez pas à partager vos idées de fonctionnalités, vos retours sur la documentation ou tout ce qui concerne Intlayer, nous utilisons ces retours pour construire notre roadmap et améliorer le produit.

      import { useLocale } from "next-intlayer"; // Utilisé pour gérer les langues et le routage dans Next.js
      <Link href="/es/about" replace>  À propos</Link>