Uso i18n para traducir la página. La página tiene 3 idiomas, polaco, alemán e inglés. El alemán es el idioma predeterminado. Funciona, pero cuando cambio el idioma a alemán y luego vuelvo a cargar, la ubicación de la página cambia a Polonia. Generalmente sé por qué está pasando. El alemán es el idioma predeterminado, por lo que cuando cambio el idioma a alemán, no se agrega nada a la URL. Luego, después de volver a cargar la página cuando la localización de mi navegador es Polonia, el idioma en la página cambia a pulido.
<div className="language"> <span> <link href="{router.asPath}" locale="de" <a onClick="{handleClick}"><img width="30px" className={locale == 'de' ? 'selected' : ''} src="/images/flags/flaga-niemiec.png"/></a> /> </span> <span> <link href="{router.asPath}" locale="pl" <a onClick="{handleClick}"><img width="30px" className={locale== 'pl' ? 'selected' : ''} src="/images/flags/flaga_polski.png"/></a> /> </span> <span> <link href="{router.asPath}" locale="en" <a onClick="{handleClick}"><img width="30px" className={locale == 'en' ? 'selected' : ''} src="/images/flags/gb.png"/></a> /> </span> </div>¿Qué debo cambiar para solucionarlo?
use la flecha gruesa mientras llama a la función. como onClick = {() => handleClick()}. Me uniré al evento. no se llamará en el primer procesamiento html.