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

306
Visualizações
Agregar y eliminar funciones en una matriz de javascript (React-Hooks)

Tengo un sistema de filtrado donde uso una matriz para agregar o eliminar los métodos de filtrado. Pero mi estado no funciona correctamente o me he perdido algo.

 const [filters, setFilters] = useState([]); const [creatorFilter, setCreatorFilter] = useState(null); const handleCreatorFilter =(filter) => { setCreatorFilter(filter); if (filter === 'structures' && filters.indexOf(byStructureFilter) === -1) { setFilters([...filters, byStructureFilter]); } if (filter === 'members' && filters.indexOf(byMemberFilter) === -1) { setFilters([...filters, byMemberFilter]); } if (filter === 'all') { setFilters(filters.filter(el => el !== byStructureFilter || el !== byMemberFilter)); } }; const byStructureFilter = (item) => { return item.relationships.structure.data }; const byMemberFilter = (item) => { return item.relationships.user.data && !item.relationships.structure.data };

Aquí los dos botones que llaman a ese handleCreatorFilter para filtrar

 <button onClick={() => creatorFilter === 'structures' ? handleCreatorFilter('all') : handleCreatorFilter('structures')}>Structures officielles</button> <button onClick={() => creatorFilter === 'members' ? handleCreatorFilter('all') : handleCreatorFilter('members')} >Membres Wekomkom</button>

Las cosas son para agregar métodos de filtrado a la matriz, funciona bien, pero no cuando el filtro está configurado para all (eliminando los métodos de filtrado). ¿Ves algo mal en mi lógica?

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
Assistente virtual