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

345
Visualizações
Next.js — router.push desplaza la página hacia arriba a pesar de que la opción de desplazamiento está configurada como falsa

Estoy usando las funciones de internacionalización integradas de Next.js para cambiar el idioma de mi aplicación y todo funciona perfectamente excepto por un comportamiento no deseado:

Llamar a la función changeLanguage hace que la página se desplace hacia la parte superior a pesar de configurar la opción de desplazamiento del enrutador en false .

Tenga en cuenta que Next.js - router.push sin desplazarse hacia la parte superior y Next.js mantienen la posición de desplazamiento cuando el enrutamiento de la página no resolvió mi problema.

 import { useRouter } from "next/router"; import Select, { components } from "react-select"; const LanguageToggler = () => { const router = useRouter(); const { locale, pathname, locales, asPath } = router; const changeLanguage = (e) => { const locale = e.value; // is equal to one of these values: ['en', 'sv', 'ru', 'fr'] router.push(pathname, asPath, { locale }, { scroll: false }); }; return ( <Select ...irrelevant onChange={changeLanguage} components={{ Option: CustomSelectOption, }} /> ) }; export default LanguageToggler;

PD: la biblioteca de reacción-selección se usa para mostrar una lista desplegable de banderas, al hacer clic en cada bandera se invoca el cambio de changeLanguage para actualizar la configuración regional en consecuencia.

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

0

El siguiente router.push acepta tres parámetros.

 router.push(pathname, asPath, { locale }, { scroll: false });

debiera ser

 router.push(pathname, asPath, { locale, scroll: false });
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