Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

221
Visualizações
Siguiente/Reaccionar en caliente para usar la cascada router.back() e ignorar los enlaces de anclaje

Estoy desarrollando mi propio sitio web de blog con Next.js y transcripciones de MD. Tengo un problema con los enlaces ancla. Todos mis títulos <h1> se convierten en enlaces de anclaje usando el siguiente componente de enlace:

 <Link passHref href={"#" + anchor.href}>{anchor.name}</Link>

De esta manera, los enlaces de anclaje funcionan bien. Pero cuando entro en un enlace de anclaje y luego presiono el botón Atrás (desde el navegador o el enrutador. Atrás ()) en lugar de regresar a la página de la que vine, simplemente regresa al enlace sin el enlace de anclaje # o a el último enlace ancla en el que hice clic.

¿Hay alguna manera de que pueda retroceder en cascada sin necesidad de pasar a la última página? Si vine de una publicación de blog X a una publicación de blog Y, ¿cómo podría retroceder hasta llegar a esta publicación X? Pensé en usar el enrutador de reacción para hacer este tipo de cascada, pero no sé si funcionaría.

Aquí está el sitio web , intentaré poner la última versión en línea hasta que publique esto.

La forma en que hago router.back es esta:

 // The router import { useRouter } from 'next/router'; const router = useRouter(); // the JSX <div variants={slideButtonDown} style={{margin: ".5rem 0"}}> <CustomButton description='Return to Blog page' text='' icon{ButtonIcon.arrowBack} onClick={() => {router.back()}}/> </div>

Si alguien tiene alguna idea de cómo podría mejorarlo, sería de gran ayuda

OBS: uso un sitio web generado estáticamente con accesorios y rutas estáticas.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

El comportamiento predeterminado del componente Enlace es push una nueva URL en la pila de historial. Puede usar el apoyo de replace para evitar agregar una nueva entrada, como en el siguiente ejemplo:

 <Link passHref href={"#" + anchor.href} replace>{anchor.name}</Link>

ref: https://nextjs.org/docs/api-reference/next/link#replace-the-url-instead-of-push

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda