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

103
Views
Devolver x-cantidad de divs dependiendo del tamaño de la lista

Tengo un componente que se ve más o menos así:

 import cx from 'clsx'; const myComponent = () => { function myFunc(binaryList) { for (const binaryVal of binaryList) { if (binaryVal == 1) { return <div className={cx(styles.all, styles.special)}></div>; } else if (binaryVal == 0) { return <div className={cx(styles.all)}></div>; } } } return ( <div className={styles.wrapper}> <div className={styles.listClass}>{myFunc(myBinaryList)}</div> </div> ); }; export default myComponent;

Básicamente, obtengo una lista ( myBinaryList ) de algún lugar, que ingreso en la función myFunc . Esta lista puede tener diferentes longitudes, pero consta de 1 y 0, por lo que algo como:

 myBinaryList = [0, 0, 1, 1, 1, 0, 0, 1]

Lo que me gustaría hacer es tomar esta lista myBinaryList , usarla en la función myFunc , y luego debería generar la misma cantidad de divs que la longitud de la lista. Entonces, básicamente, el resultado de esta lista debería ser:

 <div className={cx(styles.all)}></div> <div className={cx(styles.all)}></div> <div className={cx(styles.all, styles.special)}></div> <div className={cx(styles.all, styles.special)}></div> <div className={cx(styles.all, styles.special)}></div> <div className={cx(styles.all)}></div> <div className={cx(styles.all)}></div> <div className={cx(styles.all, styles.special)}></div>

Pero en este momento solo obtengo un div como salida. ¿Qué estoy haciendo mal?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Debe devolver una matriz de divs. Ahora su función myFunc devuelve solo un div. Intenta hacerlo con el mapa.

 function myFunc(binaryList) { return binaryList.map(binaryVal => { if (binaryVal == 1) { return <div className={cx(styles.all, styles.special)}></div> } else if (binaryVal == 0) { return <div className={cx(styles.all)}></div> } }); }
about 4 years ago · Juan Pablo Isaza 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!