HomeAmbiente di testVetrinaAppDocBlog
    • Englishinglese
      EN
    • русскийrusso
      RU
    • 日本語giapponese
      JA
    • françaisfrancese
      FR
    • 한국어coreano
      KO
    • 中文cinese
      ZH
    • españolspagnolo
      ES
    • Deutschtedesco
      DE
    • العربيةarabo
      AR
    • italianoitaliano
      IT
    • British Englishinglese britannico
      EN-GB
    • portuguêsportoghese
      PT
    • हिन्दीhindi
      HI
    • Türkçeturco
      TR
    • polskipolacco
      PL
    • Indonesiaindonesiano
      ID
    • Tiếng Việtvietnamita
      VI
    • українськаucraino
      UK
    /
    Filtra la documentazione per framework
    Alt+←
    Perché Intlayer?
    Iniziare
    Concetto
    • Come funziona Intlayer
    • Configurazione
    • TestFillBuildWatchExtractLoginPushPullConfigurationListVersionEditorLiveDebugDoc ReviewDoc TranslateSDK
    • Editor visuale
    • CMS
    • Integrazione CI/CD
    • TraduzionePluraleEnumerazioneCondizioneGenereInserimentoFileAnnidamentoMarkdownHTMLRecupero funzione
    • File per locale
    • Compilatore
    • Compilazione automatica
    • Test
    • Ottimizzazione del bundle
    Ambiente
    • Next.js 14 e App Router
      Next.js 15
      Next.js senza locale URL
      Next.js e Page Router
      Compiler
    • Tanstack Start Solid
    • Astro e React
      Astro e Svelte
      Astro e Vue
      Astro e Solid
      Astro e Preact
      Astro e Lit
      Astro e Vanilla JS
    • React Router v7
      React Router v7 (fs-routes)
      Compiler
    • Nuxt e Vue
    • Vite e Solid
    • SvelteKit
    • Vite e Preact
    • Vite e Vanilla JS
    • Vite e Lit
    • Angular 19 (Webpack)
      Analog
    • React CRA
    • React Native e Expo
    • Express.js
      NestJS
      Fastify
      Hono
      Adonis
    • Lynx e React
    Plugins
    • JSON
    • gettext (.po)
    Estensione VS Code
    Agente
    • Server MCP
    • Abilità dell’agente
    Versioni
    • v8
    • v7
    • v6
    Benchmark
    • Next.js
    • TanStack
    • Vue
    • Solid
    • Svelte
    Blog
    Fai una domanda
    1. Documentation
    2. Packages
    3. Next intlayer
    4. UseLocale
    Creazione:2024-08-11Ultimo aggiornamento:2026-01-26
    Riferimento a questa documentazione al tuo assistente AI preferito
    ChatGPT
    Claude
    DeepSeek
    Google AI mode
    Gemini
    Perplexity
    Mistral
    Grok

    Pose una domanda e ottieni un riassunto del documento facendo riferimento a questa pagina e al provider AI di tua scelta

    Cronologia delle versioni

    1. "Impostato il valore predefinito di `onLocaleChange` su `replace`"
      v8.0.026/01/2026
    2. "Inizio cronologia"
      v5.5.1029/06/2025

    Il contenuto di questa pagina è stato tradotto con un'IA.

    Vedi l'ultima versione del contenuto originale in inglese
    Modifica questa documentazione

    Se hai un’idea per migliorare questa documentazione, non esitare a contribuire inviando una pull request su GitHub.

    Collegamento GitHub alla documentazione
    Copia

    Copia il Markdown del documento nella porta-documenti

    Integrazione Next.js: Documentazione dell'hook useLocale per next-intlayer

    Questa sezione offre una documentazione dettagliata sull'hook useLocale pensato per applicazioni Next.js all'interno della libreria next-intlayer. È progettato per gestire in modo efficiente i cambiamenti di locale e il routing.

    Importare useLocale in Next.js

    Per utilizzare l'hook useLocale nella tua applicazione Next.js, importalo come mostrato di seguito:

    javascript
    Copiare il codice

    Copiare il codice nella clipboard

    import { useLocale } from "next-intlayer"; // Usato per gestire i locali e il routing in Next.js

    Utilizzo

    Ecco come implementare l'hook useLocale all'interno di un componente Next.js:

    src/components/LocaleSwitcher.tsx
    Copiare il codice

    Copiare il codice nella clipboard

    "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>Locale Corrente: {locale}</h1>
          <p>Locale Predefinito: {defaultLocale}</p>
          <select value={locale} onChange={(e) => setLocale(e.target.value)}>
            {availableLocales.map((loc) => (
              <option key={loc} value={loc}>
                {loc}
              </option>
            ))}
          </select>
        </div>
      );
    };

    Parametri

    L'hook useLocale accetta i seguenti parametri:

    • onLocaleChange: Una stringa che determina come l'URL deve essere aggiornato quando cambia la locale. Può essere "replace", "push" o "none".

      Facciamo un esempio:

      1. Sei su /fr/home
      2. Navighi su /fr/about
      3. Cambi la locale in /es/about
      4. Clicchi sul pulsante "indietro" del browser

      Il comportamento differirà in base al valore di onLocaleChange:

      • "replace" (predefinito): Sostituisce l'URL corrente con il nuovo URL localizzato e imposta il cookie. -> Il pulsante "indietro" andrà su /es/home
      • "push": Aggiunge il nuovo URL localizzato alla cronologia del browser e imposta il cookie. -> Il pulsante "indietro" andrà su /fr/about
      • "none": Aggiorna solo la locale nel contesto del client e imposta il cookie, senza cambiare l'URL. -> Il pulsante "indietro" andrà su /fr/home
      • (locale) => void: Imposta il cookie e attiva una funzione personalizzata che verrà chiamata quando cambia la locale.

        L'opzione undefined è il comportamento predefinito poiché consigliamo di utilizzare il componente Link per navigare verso la nuova locale. Esempio:

        tsx
        Copiare il codice

        Copiare il codice nella clipboard

        <Link href="/es/about" replace>  Chi siamo</Link>

    Valori di Ritorno

    • locale: La locale corrente come impostata nel contesto React.
    • defaultLocale: La locale primaria definita nella configurazione.
    • availableLocales: Una lista di tutte le localizzazioni disponibili come definite nella configurazione.
    • setLocale: Una funzione per cambiare la locale dell'applicazione e aggiornare di conseguenza l'URL. Gestisce le regole del prefisso, decidendo se aggiungere o meno la locale al percorso in base alla configurazione. Utilizza useRouter da next/navigation per le funzioni di navigazione come push e refresh.
    • pathWithoutLocale: Una proprietà calcolata che restituisce il percorso senza la locale. È utile per confrontare gli URL. Ad esempio, se la locale corrente è fr e l'URL è fr/my_path, il percorso senza locale è /my_path. Utilizza usePathname da next/navigation per ottenere il percorso corrente.

    Conclusione

    L'hook useLocale di next-intlayer è uno strumento fondamentale per la gestione delle localizzazioni nelle applicazioni Next.js. Offre un approccio integrato per adattare la tua applicazione a più localizzazioni gestendo senza soluzione di continuità l'archiviazione della locale, la gestione dello stato e le modifiche degli URL.

    Perché Intlayer?
    Alt+→

    In questa pagina

      Le discussioni sono anonime e vengono regolarmente esaminate per affrontare problemi comuni. Sentiti libero di condividere idee per nuove funzionalità, feedback sulla documentazione o qualsiasi cosa relativa a Intlayer, utilizziamo questi input per definire la nostra roadmap e migliorare il prodotto.

      import { useLocale } from "next-intlayer"; // Usato per gestire i locali e il routing in Next.js
      <Link href="/es/about" replace>  Chi siamo</Link>