Gatsby,Gsap-构建后gsap动画不起作用

问题描述 投票:0回答:1

我正在使用gatsby和gsap创建网站。所有动画在开发时都可以工作,但不能在正式版上工作。

我正在使用Gatsby V3。

哪里可能有问题?

感谢您的反馈!

const HeaderComponent = () => {

  const animWrapper = useRef(null)

  useEffect(() => {

    const [elements] = animWrapper.current.children

    const what = elements.getElementById('What')
    const ever = elements.getElementById('Ever')
    const button = document.getElementById('header-button')
    const icon = document.getElementById('header-icon')

    const whatChildrens = what.children
    const everChildrens = ever.children
    const allChildrens = [...whatChildrens, ...everChildrens]

    gsap.set([...allChildrens, button], { autoAlpha: 0 })

    const timeLine = gsap.timeline({ defaults: { ease: 'power3.inOut' } })

    timeLine
      .to(whatChildrens, { autoAlpha: 1, duration: 0.75 })
      .to(everChildrens, { autoAlpha: 1, stagger: 0.025 })
      .to(button, { autoAlpha: 1 })
  }, [])

  return (
      <HeaderWrapper className="header" id="main-header">
        <div ref={animWrapper} id="header-logo-wrapper">
          <WhatEver style={{width: '100%'}}/>

          <HeaderButton id="header-button" onClick={() => scrollTo('#poznaj-nas')}>
            <FontAwesomeIcon icon={faArrowDown} id="header-icon"/>
          </HeaderButton>
        </div>
      </HeaderWrapper>
  )
}
javascript reactjs gatsby gsap
1个回答
0
投票

您需要导入您使用的内容,例如:

import { gsap, TweenMax, TimelineMax, Power2 } from "gsap/dist/gsap";
© www.soinside.com 2019 - 2024. All rights reserved.