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

137
Visualizações
Creando un componente Observer en React - Pasando accesorios a los niños

Estoy buscando construir un componente de observador de intersección en un proyecto personal de Gatsby. La razón de esto es que la animación y el activador son los mismos en diferentes áreas del sitio. Lo que tengo hasta ahora:

 // Observer.js import React, { useEffect, useRef } from "react"; import { useAnimation } from "framer-motion"; const Observer = ({ children }) => { const controls = useAnimation(); const ref = useRef(); useEffect(() => { const observer = new IntersectionObserver( ([entry]) => { if (entry.isIntersecting) { controls.start({ opacity: 1, transition: { duration: 0.75, delay: 0.75 }, }); } }, { root: null, rootMargin: "0px", threshold: 0.1, } ); if (ref.current) { observer.observe(ref.current); } }, [ref]); return <div ref={ref}>{children}</div>; }; export default Observer;

Lo que busco hacer es acceder a los controls en los elementos secundarios del componente Observer.js .

 // ChildComponent.js const ChildComponent= (props) => { return ( <Observer> <div> <motion.div initial={{ opacity: 0 }} animate={props.controls} > <h2>This will animate on scroll</h2> </motion.div> </div> </Observer> ); }; export default ChildComponent;

He visto respuestas como -Pasar accesorios del diseño a niños en Gatsby - pero obtengo el error props.children is not a function cuando intento esto.

¿Es posible lo que estoy buscando hacer, o hay una mejor manera de lograrlo?

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