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

182
Vistas
Cómo representar un componente de reacción y replicarlo desde el evento de clic

Quiero hacer varias copias de Form2 React Component con un evento de clic, pero el código no funciona como quiero, soy nuevo en React, así que alguien puede ayudarme.

 const Comform = () => { const Form2 = () => { return( <div className="card" id='form-card2'> <input className="form-check-input" type="checkbox" value="" id="options-check" onClick={Optionscheck} /> </div> ); } const Replica = () { <Form2/> } return( <button type="button" className="btn btn-success" onClick={Replica}>Add</button> ); }
about 4 years ago · Santiago Gelvez
2 Respuestas
Responde la pregunta

0

Mantenga un estado como contador de réplicas y represente la cantidad de elementos que desee mediante Array.from y Array.prototype.map .

Prueba así:

 const Form2 = () => { return ( <div className="card" id="form-card2"> <input className="form-check-input" type="checkbox" value="" id="options-check" // onClick={Optionscheck} /> abcd </div> ); }; const Replica = () => { const [replicaCount, setReplicaCount] = React.useState(0); return ( <div> <button type="button" className="btn btn-success" onClick={() => setReplicaCount((prev) => prev + 1)} > Add </button> {Array.from({ length: replicaCount }).map((_, index) => ( <Form2 key={index}/> ))} </div> ); }; ReactDOM.render(<Replica />, document.querySelector('.react'));
 <script crossorigin src="https://unpkg.com/react@16/umd/react.development.js"></script> <script crossorigin src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script> <div class='react'></div>

about 4 years ago · Santiago Gelvez Denunciar

0

Resumen

Tendría que crear un controlador para el botón de réplica y un estado que rastree la frecuencia con la que se hizo clic en el botón, de modo que pueda representar tantos elementos de formulario como se hizo clic en el botón.

Ejemplo

 import { useState } from "react"; import "./styles.css"; const FormItem = () => ( <div className="formItem"> <label>Check me</label> <input type="checkbox" /> </div> ); const ReplicaButton = ({ addFormItem }) => ( <button onClick={addFormItem}>Add more</button> ); export default function Form() { const [formCount, setFormCount] = useState(1); const addFormItem = () => setFormCount(formCount + 1); return ( <div> <form className="formius"> {Array(formCount) .fill(null) .map(() => ( <FormItem /> ))} </form> <ReplicaButton addFormItem={addFormItem} /> </div> ); }

Editar elementos de formulario de replicación

about 4 years ago · Santiago Gelvez 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