Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

104
Views
<select> debe tener {defaultValue} o {value} en lugar de configurar {selected}

Estoy construyendo un sitio de comercio electrónico con reactjs con componente con estilo. Mi página product.jsx que tiene el elemento <select> con diferentes tamaños de producto [XS,S,M,L,XL] que causa el error siempre muestra este error al renderizar en console.dev:

Advertencia: use el value defaultValue o las propiedades de valor en lugar de la configuración selected en .

Probé este código justo debajo antes, pero no funciona como se esperaba. Espero mostrar el primer elemento como deshabilitado y no debería seleccionarse en absoluto:

 <Filter> <FilterTitle>Size</FilterTitle> <FilterSize onChange={(e) => setSize(e.target.value)}> {product.size?.map((s) => ( <FilterSizeOption key={s}>{s}</FilterSizeOption> ))} </FilterSize> </Filter>

Por favor, ayúdame a corregir este código a continuación, no el anterior.

código de producto.jsx :

 const FilterSize = styled.select` margin-left: 10px; padding: 5px; cursor: pointer; outline: 0px; font-size: inherit; `; const FilterSizeOption = styled.option``; //... <Filter> <FilterTitle>Size</FilterTitle> <FilterSize onChange={(e) => setSize(e.target.value)}> <FilterSizeOption selected={true} disabled="disabled"> Choose a size: </FilterSizeOption> {product?.product?.size.map((s) => ( <FilterSizeOption key={s} value={s}> {s} </FilterSizeOption> ))} </FilterSize> </Filter>
about 4 years ago · Santiago Gelvez
1 answers
Answer question

0

Para resolver este error, necesita cambiar value="default" en lugar de selected={true} , y en el componente FilterSize debe agregar defaultValue="default" . El valor predeterminado y el valor con el mismo valor, vinculará la selección predeterminada. El valor predeterminado puede cambiar el nombre usted mismo.

Antes

ingrese la descripción de la imagen aquí

Después

ingrese la descripción de la imagen aquí

 const FilterSize = styled.select` margin-left: 10px; padding: 5px; cursor: pointer; outline: 0px; font-size: inherit; `; const FilterSizeOption = styled.option``; const sizes = ['XS', 'S', 'M', 'L', 'XL']; function App() { const [size, setSize] = useState(); return ( <> <FilterSize defaultValue="default" onChange={e => setSize(e.target.value)}> <FilterSizeOption value="default" disabled="disabled"> Choose a size: </FilterSizeOption> {sizes.map(s => ( <FilterSizeOption key={s} value={s}> {s} </FilterSizeOption> ))} </FilterSize> </> ); } export default App;
about 4 years ago · Santiago Gelvez Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!