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

265
Visualizações
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 à 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