Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

157
Visualizações
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 Respostas
Responde à pergunta

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 Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda