Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

286
Vistas
Seleccione la etiqueta para la actualización de React, tratando de mostrar el valor predeterminado y los valores modificados para seleccionar la etiqueta en React

así que tengo algo como esto:

El valor predeterminado es inglés de todos modos, pero quiero mostrar "inglés" en lugar de Seleccionar allí, también si selecciono cualquier otro idioma del menú:

https://i.stack.imgur.com/A1iDx.png

el valor todavía dice "Seleccionar" pero el contenido de la página web cambia de todos modos, ¿cómo puedo mostrar el valor si selecciono algo de la etiqueta?

código hasta ahora:

 const [select, setSelectedOption] = React.useState(); const options = [ {value: 'English', label: 'English' }, { value: 'Japanese', label: 'Japanese' }, { value: 'Chinese', label: 'Chinese' }, { value: 'Korean', label: 'Korean' }, { value: 'Spanish', label: 'Spanish' }, ]; const handleChange = SelectedOption => { setSelectedOption(SelectedOption) localStorage.setItem("lang", SelectedOption.value); window.location.reload(false) // history.push(window.location.pathname); }; <div className="Language"> <h4>Language</h4> <Select value={select} onChange={handleChange} options={options} default={options[0].value} /> </div>

Cualquier ayuda sería apreciada ! Lo que estoy intentando es.

  1. La página ya está en inglés de forma predeterminada, por lo que debería mostrar "Inglés" como ya se seleccionó en la etiqueta.
  2. Si selecciono cualquier otro idioma en lugar de inglés, entonces el idioma debería reemplazar al inglés y mostrarse.

Así que he hecho esto por ahora:

 <h4>Language</h4> <Select defaultValue={options[0]} value={select} onChange={handleChange} options={options} autoFocus ={true} /> const handleChange = SelectedOption => { setSelectedOption({SelectedOption}) console.log(SelectedOption) localStorage.setItem("lang", SelectedOption.value); window.location.reload(false) };

Aparece el valor "Inglés", pero cuando cambio a otro idioma, el valor "Inglés" permanece, pero la página cambia su idioma.

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

ok, obtuve la respuesta después de los rastros y el error, pero esto permanece fijo en una sola página, ¿alguien puede ayudarme si estos valores deben corregirse cuando navegamos a otras páginas? mi solución actual a la pregunta que publiqué es esta:

 const options = [ {value: 'English', label: 'English' }, { value: 'Japanese', label: 'Japanese' }, { value: 'Chinese', label: 'Chinese' }, { value: 'Korean', label: 'Korean' }, { value: 'Spanish', label: 'Spanish' }, ]; const[select, setSelectedOption] = useState(options[0].value); const handleChange = SelectedOption => { console.log(SelectedOption.value) setSelectedOption(SelectedOption.value) localStorage.setItem("lang", SelectedOption.value); //window.location.reload(true) history.push(window.location.pathname); }; <div className="Language"> <h4>Language</h4> <Select value={select.value} defaultValue = 'English' onChange={handleChange} options={options} /> </div>

El único problema es que si navego a otras páginas, los valores desaparecen y la etiqueta permanece vacía nuevamente.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Espero que administres el valor de 'seleccionar' a través de useState(). Si es así, el motivo de este comportamiento es después de seleccionar, el componente se vuelve a renderizar y establece el valor predeterminado nuevamente. Para superar eso, elimine el valor predeterminado y establezca el valor inicial en el atributo de valor en select.

 const options = [ {value: 'English', label: 'English' }, { value: 'Japanese', label: 'Japanese' }, { value: 'Chinese', label: 'Chinese' }, { value: 'Korean', label: 'Korean' }, { value: 'Spanish', label: 'Spanish' }, ]; const[select, setSelectedOption] = useState(options[0].value); const handleChange = SelectedOption => { setSelectedOption(SelectedOption) localStorage.setItem("lang", SelectedOption.value); window.location.reload(false)}; <div className="Language"> <h4>Language</h4> <Select value={select} onChange={handleChange} options={options} autoFocus ={true} /> </div>
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda