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

158
Vistas
La asignación a React Modal representa todos los elementos de la matriz en lugar de asignarlos por su ID

Mi problema es que cuando mapeo los datos en Modal, devuelve todos los elementos de ese campo en la matriz, por ejemplo, el mapeo de Business Name devolverá todos los nombres comerciales en la matriz en lugar de 1.

También estoy usando React-Bootstrap-Table-Next en el mismo componente para representar datos. Se agrega un botón a cada fila de la tabla en el que me gustaría hacer clic y mostrar más información sobre esa fila en particular.

Botón que se representa en la tabla con el controlador onClick para abrir el modal:

 const columns = [ { dataField: "View", text: "View", formatter: () => {return <Button variant="success" onClick={handleShow}>View</Button>}, headerStyle: () => {return { width: "5%" };} }, { dataField: "BusinessName", text: "Business Name", headerStyle: () => {return { width: "27%" };} }, ];

Manejo de estado modal:

 const [showModal, setShow] = useState(false); const handleClose = () => setShow(false); const handleShow = () => setShow(true);

Código modal con función de mapa:

 <Modal show={showModal} onHide={handleClose} size="lg" centered > <Modal.Header closeButton> {submitted.map((item) => <Modal.Title key={item.Id}> {item.BusinessName}</Modal.Title> )} </Modal.Header> <Modal.Body></Modal.Body> <Modal.Footer> <Button variant="secondary" onClick={handleClose}> Close </Button> <Button variant="primary" onClick={handleClose}> Save Changes </Button> </Modal.Footer> </Modal>

Obtener y configurar los datos:

 const [submitted, setSubmitted] = useState([]); const getSubmittedData = async () => { try { const response = await Axios.get(url); setSubmitted(response.data); console.log(response.data); setLoading(true); } catch (e) { console.log(e) } };
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

No está claro cuál debería ser el resultado esperado y qué contiene la matriz enviada.

Map creará una nueva matriz con todos los valores devueltos por la función dada. Si solo desea representar algunos valores, entonces tal vez necesite filtrar primero.

Si solo desea los artículos que incluyen una identificación, entonces tal vez algo como

 {submitted.filter(item => item.id).map(item => ( //render items here )}

No tengo suficiente representante para comentar y aclarar la información, así que espero que esto sea útil. Saludos

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