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

264
Vistas
Cuente el número de filas de elementos li en el contenedor ul con React

Me preguntaba cómo medir el número de filas en un contenedor. Cuando muestra más de 3 filas de li, quiero que el resto de los elementos de li en las filas de abajo se oculten con un botón para mostrar más/menos.

Hasta ahora he medido las filas con la altura del contenedor. "Cuando la altura del contenedor ul es superior a 128 px (equivalente a 3 filas), ocultar los elementos li por encima de esa altura" es la lógica, pero esto no funciona al ocultar los elementos li según el siguiente código.

¿Podría ayudarme a refactorizar el código para que funcione o proporcionar un método alternativo para medir la cantidad de filas?

¡Gracias por adelantado!

rebeca

 export function ListOfItems(): JSX.Element { const [isOpen, setIsOpen] = useState(false); const [height, setHeight] = useState(0); const ref = useRef(null); useEffect(() => { setHeight(ref.current?.clientHeight); }); console.log(height); return ( <ListSection title={`List of Items`}> <ul className={styles.wrapper} ref={ref}> {list?.map((listItem, height) => ( <li key={id} className={classNames({ [styles.hidden]: height > 128 && !isOpen, })} > <RoundedPill label={label} /> </li> ))} </ul> <p onClick={() => setIsOpen(!isOpen)}>{isOpen ? "Show less" : "Show more"}</p> </ListSection> ); }

about 4 years ago · Juan Pablo Isaza
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