Hooks
useRouter

useRouter

El hook useRouter es una implementación de un enrutador basado en window.location. Proporciona funcionalidades similares a las de un enrutador de Next.js, pero utilizando la API nativa del navegador para manejar la navegación.

Importación

Para importar el componente useRouter, se puede hacer desde fenextjs

import { useRouter } from "fenextjs";

window.location

El hook utiliza la API nativa del navegador window.location para manejar la navegación y el historial.

NombreDescripcionDefault
pathnameLa ruta actual de la URL.window.location.pathname
queryLos parámetros de consulta de la URL.new URLSearchParams(window.location.search)
hashEl hash de la URL.window.location.hash

Returns

ParametroTipoDescripcion
asPathstringLa ruta completa actual, incluyendo el pathname, los parámetros de consulta (query) y el hash.
back() => voidNavega hacia atrás en el historial del navegador.
forward() => voidNavega hacia adelante en el historial del navegador.
isReadybooleanIndica si el enrutador está listo. Siempre es true en este hook, ya que window.location está siempre disponible.
pathnamestringLa ruta actual (pathname) de la URL.
push(url: string) => voidNavega a una nueva URL y añade una entrada al historial del navegador.
queryobjectUn objeto que contiene los parámetros de consulta (query) de la URL.
reload() => voidRecarga la página actual.
replace(url: string) => voidReemplaza la URL actual sin añadir una nueva entrada al historial del navegador.
routestringLa ruta actual (pathname) de la URL.

Usos

  • Navegar a una nueva URL
const { push } = useRouter();
push("/nueva-ruta");
  • Reemplazar la URL actual
const { replace } = useRouter();
replace("/otra-ruta");
  • Navegar hacia atrás
const { back } = useRouter();
back();
  • Navegar hacia adelante
const { forward } = useRouter();
forward();
  • Recargar la página
const { reload } = useRouter();
reload();