COINSS: React Custom Hooks로 Scroll Event 구현하기

PHOTO EMBED

Mon Sep 05 2022 06:07:15 GMT+0000 (Coordinated Universal Time)

Saved by @wumeenna #typescript

import { useState, useEffect } from 'react';
import debounce from 'lodash/debounce';

export function useScroll() {
  const [scrollY, setScrollY] = useState<number>(0);

  const listener = () => {
    setScrollY(window.pageYOffset);
  };

  const delay = 15;

  useEffect(() => {
    window.addEventListener('scroll', debounce(listener, delay));
    return () => window.removeEventListener('scroll', listener);
  });

  return {
    scrollY
  };
}
content_copyCOPY

https://velog.io/@taeung/React-Custom-Hooks로-Scroll-Event-구현하기