Sé que es posible cambiar dinámicamente la URL sin actualizar la página usando <Link> ; sin embargo, ¿es posible hacerlo sin <Link> ? Por contexto, estoy tratando de cambiar la URL dinámicamente en una página a otra si una variable cambia su valor de false a true . El valor de la variable no depende de que se haga clic en un botón, por eso no quiero usar <Link> . En este momento, estoy usando window.top.location.href dentro de useEffect() , que hace el trabajo, pero es muy torpe ya que la página completa se vuelve a cargar. ¿Alguien sabe cómo lograr lo que estoy tratando de hacer?
Lo siguiente es lo que estoy haciendo actualmente:
useEffect(() => { if (status === true) { window.top.location.href='https://www.website.com' }; }, [status];Encontré una solución. Todo lo que tenía que hacer era cambiar la línea con window.top.location.href a router.push() . El siguiente es el código actualizado que funciona según lo previsto:
useEffect(() => { if (status === true) { router.push('https://www.website.com') }; }, [status];