Haz tu pregunta y obtén un resumen del documento referenciando esta página y el proveedor AI de tu elección
Historial de versiones
- "Añadir utilidad usePathname"v10.0.023/6/2026
- "Init history"v8.2.022/6/2026
El contenido de esta página ha sido traducido con una IA.
Ver la última versión del contenido original en inglésIf 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
Integración con Solid: Documentación del Hook usePathname
El hook usePathname devuelve el pathname del navegador actual eliminando el segmento de locale, en forma de Accessor<string> en Solid. Es útil para la navegación basada en locale — por ejemplo, determinar qué elemento de navegación está activo — sin tener que eliminar manualmente el prefijo de locale.
Importando usePathname en Solid
Copiar el código al portapapeles
import { usePathname } from "solid-intlayer";Descripción general
usePathname crea una señal reactiva inicializada desde window.location.pathname, elimina el prefijo de locale a través de getPathWithoutLocale y actualiza la señal cada vez que el navegador dispara un evento popstate (navegación atrás/adelante). El listener del evento se limpia automáticamente a través de onCleanup.
Uso
Copiar el código al portapapeles
import type { Component } from "solid-js";import { usePathname } from "solid-intlayer";type NavItemProps = { href: string; label: string;};const NavItem: Component<NavItemProps> = ({ href, label }) => { const pathname = usePathname(); return ( <a href={href} aria-current={pathname() === href ? "page" : undefined}> {label} </a> );};export default NavItem;Valor de retorno
Abrir la tabla en una ventana flotante para ver todo el contenido claramente
| Tipo | Descripción |
|---|---|
Accessor<string> | Accessor de Solid (getter reactivo) que devuelve el pathname actual sin el prefijo del locale. |
Comportamiento
- Eliminación del locale: Elimina el segmento inicial de locale (ej.
/es/dashboard→/dashboard). - Reactivo: Se actualiza automáticamente en los eventos
popstate(navegación hacia atrás/adelante en el navegador). - Seguro para SSR: Devuelve
""cuandowindowno está disponible. - Limpieza (Cleanup): El listener
popstatese elimina automáticamente medianteonCleanupde Solid.
Ejemplo
Copiar el código al portapapeles
import type { Component } from "solid-js";import { For } from "solid-js";import { usePathname } from "solid-intlayer";const links = [ { href: "/dashboard", label: "Dashboard" }, { href: "/settings", label: "Ajustes" },];const Sidebar: Component = () => { const pathname = usePathname(); return ( <nav> <For each={links}> {({ href, label }) => ( <a href={href} style={{ "font-weight": pathname() === href ? "bold" : "normal" }} > {label} </a> )} </For> </nav> );};export default Sidebar;Relacionado
useLocale— locale actual + cambiador de localegetPathWithoutLocale— la utilidad subyacente que utiliza este hook