55555-Jyeon / portfolio

portfolio(on progress)
https://portfolio-juyeon-oh.netlify.app/
0 stars 0 forks source link

smooth scroll library #4

Open 55555-Jyeon opened 3 months ago

55555-Jyeon commented 3 months ago

visit site 👉 https://www.npmjs.com/package/@studio-freight/react-lenis

1️⃣ npm i

$ npm i @studio-freight/react-lenis

2️⃣ how to use


import { ReactLenis, useLenis } from '@studio-freight/react-lenis'

function Layout() {
  const lenis = useLenis(({ scroll }) => {
    // called every scroll
  })

  return (
    <ReactLenis root>
      { /* content */ }
    </ReactLenis>
  )
}
55555-Jyeon commented 3 months ago

example

function Component() {
  const lenisRef = useRef()

  useEffect(() => {
    function update(time) {
      lenisRef.current?.lenis?.raf(time * 1000)
    }

    gsap.ticker.add(update)

    return () => {
      gsap.ticker.remove(update)
    }
  })

  return (
    <ReactLenis ref={lenisRef} autoRaf={false}>
      { /* content */ }
    </ReactLenis>
  )
}