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

271
Vistas
Gancho useState de React: los objetos no son válidos como un elemento secundario de React

Codifico useState como esta publicación

 const [searchQuery, setSearchQuery] = React.useState({ Search1: "", Search2: "", });

y tira

Los objetos no son válidos como hijos de React (encontrado: objeto con claves {Search1, Search2}). Si tenía la intención de representar una colección de niños, use una matriz en su lugar.

código completo

 import * as React from 'react' const Search = ({ handlerProp, searchQueryProp, inputName }) => { return ( <div className="App"> <input type="text" name={inputName} onChange={handlerProp} value={searchQueryProp} /> </div> ); } function App() { const [searchQuery, setSearchQuery] = React.useState({ Search1: "", Search2: "", }); function handleEmit({ target: { name, value } }) { setSearchQuery((prevState) => ({...prevState, [name]: value})); } return ( <div className="App"> <Search handlerProp={handleEmit} searchQueryProp={searchQuery} inputName="Search1" /> <Search handlerProp={handleEmit} searchQueryProp={searchQuery} inputName="Search2" /> </div> ); }

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

0

Como mencioné en los comentarios antes de agregar los códigos relacionados, el problema está en su objeto searchQuery .

¿Por qué obtuviste este error?

pasó un objeto en lugar de una cadena al componente de Search . El elemento de input , obtiene una propiedad de value que es una string .

La solución:

Entonces, cambie la sección de retorno de su App para pasar una string válida para searchQueryProp :

 return ( <div className="App"> <Search handlerProp={handleEmit} searchQueryProp={searchQuery.search1} inputName="Search1" /> <Search handlerProp={handleEmit} searchQueryProp={searchQuery.search2} inputName="Search2" /> </div> );

Nota: siempre use los caracteres en minúsculas para definir sus variables y constantes y solo use los caracteres en mayúsculas en el nombre de los componentes. definió el valor de su estado con Search1 y Search2 que no es correcto.

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