• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

97
Vistas
encontrar un componente que contenga un cierto nombre de clase reaccionar js

Busque el Componente de una lista de componentes que contenga un determinado nombre de clase. En mi caso, quiero mostrar el componente que tiene el nombre de clase "bbb". Pero parece que no puedo encontrar el nombre de clase. En el siguiente código, hice mi ejemplo con el Nombre del componente solo para poder demostrar mejor lo que quiero lograr:

 import React, { useState, useEffect } from 'react'; const Test = () => { const One = () => { return ( <h1 className='aaa' >one</h1> ) } const Two = () => { return ( <h1 className='bbb' >two</h1> ) } const Three = () => { return ( <h1 className='ccc' >Three</h1> ) } const [data, setdata] = useState([<One />, <Two />, <Three />]) return ( <section> {data.filter(x => x.type.name === 'One').map(x => { // something like this line below. This doesn't work of course // {data.filter(x => x.classList.contains('bbb)).map(x => { return <div>{x}</div> })} </section> ) }; export default Test;

Soy realmente nuevo en React js, lo siento si esta es una pregunta estúpida.

Editar: Corregido un error tipográfico

about 3 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

En lugar de encontrar un nombre de clase para ese filtro, puede hacerlo de esta manera.

2 cosas clave en mis cambios:

const [data, setdata] = useState([One, Two, Three]) No debe llamar a <One/> (debajo del gancho, está llamando a React.createElement(One) para representar ese componente)

data.filter((Component) => Component === Two) Verifique la referencia del componente en lugar del nombre de la clase, porque el nombre de la clase puede cambiarse y causará un error en su lógica

 import React, { useState, useEffect } from 'react' const Test = () => { const One = () => { return <h1 className="aaa">one</h1> } const Two = () => { return <h1 className="bbb">two</h1> } const Three = () => { return <h1 className="ccc">Three</h1> } const [data, setdata] = useState([One, Two, Three]) return ( <section> {data .filter((Component) => Component === Two) .map((Component) => { return ( <div> <Component /> </div> ) })} </section> ) } export default Test
about 3 years ago · Juan Pablo Isaza 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 Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda