Pose una domanda e ottieni un riassunto del documento facendo riferimento a questa pagina e al provider AI di tua scelta
Cronologia delle versioni
- "Aggiunta utility usePathname"v10.0.023/06/2026
- "Inizializzazione della cronologia"v8.2.022/06/2026
Il contenuto di questa pagina è stato tradotto con un'IA.
Vedi l'ultima versione del contenuto originale in ingleseIf 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
Integrazione Next.js: Documentazione dell'Hook usePathname
L'hook usePathname restituisce il percorso corrente di Next.js senza il segmento della lingua. È utile per creare una navigazione consapevole della lingua — ad esempio, per determinare quale elemento di navigazione è attivo — senza dover rimuovere manualmente il prefisso della lingua.
Importare usePathname in Next.js
Copiare il codice nella clipboard
import { usePathname } from "next-intlayer";Panoramica
usePathname avvolge il usePathname() integrato di Next.js proveniente da next/navigation, aggiunge eventuali parametri di ricerca (search params) e rimuove il prefisso della lingua tramite getPathWithoutLocale. Riavvia il rendering (re-render) ad ogni navigazione lato client. L'hook è disponibile solo nei Client Components (richiede "use client").
Utilizzo
Copiare il codice nella clipboard
"use client";
import type { FC } from "react";
import { usePathname } from "next-intlayer";
type NavItemProps = {
href: string;
label: string;
};
const NavItem: FC<NavItemProps> = ({ href, label }) => {
const pathname = usePathname();
const isActive = pathname === href;
return (
<a href={href} aria-current={isActive ? "page" : undefined}>
{label}
</a>
);
};
export default NavItem;Valore Restituito
Apri la tabella in una finestra modale per visualizzare tutti i dati in modo chiaro
| Tipo | Descrizione |
|---|---|
string | Il percorso corrente senza il prefisso della lingua e senza i parametri di query correlati alla lingua. |
Comportamento
- Rimozione della lingua: Rimuove il segmento iniziale della lingua (es.
/it/dashboard→/dashboard). - Rimozione dei parametri di ricerca: Rimuove anche un parametro di query
?locale=...quando si utilizza la modalità di routing basata sui parametri di ricerca. - Reattivo: Si aggiorna automaticamente ad ogni navigazione lato client tramite l'App Router di Next.js.
- Sicuro per il SSR: Restituisce il percorso lato server durante il primo rendering, sincronizzando poi i parametri di ricerca lato client.
Confronto con useLocale
useLocale di next-intlayer espone già pathWithoutLocale come parte del suo valore restituito. Usa usePathname quando ti serve solo il percorso e non hai bisogno della funzionalità di cambio lingua.
Copiare il codice nella clipboard
// Quando ti servono sia lo stato della lingua che il percorso:
import { useLocale } from "next-intlayer";
const { locale, pathWithoutLocale } = useLocale();
// Quando ti serve solo il percorso:
import { usePathname } from "next-intlayer";
const pathname = usePathname();Esempio
Copiare il codice nella clipboard
"use client";
import type { FC } from "react";
import { usePathname } from "next-intlayer";
const links = [
{ href: "/dashboard", label: "Dashboard" },
{ href: "/settings", label: "Impostazioni" },
];
const Sidebar: FC = () => {
const pathname = usePathname();
return (
<nav>
{links.map(({ href, label }) => (
<a
key={href}
href={href}
style={{ fontWeight: pathname === href ? "bold" : "normal" }}
>
{label}
</a>
))}
</nav>
);
};
export default Sidebar;Articoli Correlati
useLocale— lingua corrente + commutatore di lingua (espone anchepathWithoutLocale)getPathWithoutLocale— l'utility di base usata da questo hook