해결된 질문
작성
·
195
0
안녕하세요.
13:00에서, useEffect 클린업 부분에 '스크롤 하면 이벤트리스너가 제거' 된다고 해석하면 될까요?
window.removeEventListener("scroll", () => {})
답변 1
1
안녕하세요!!
현재 "스크롤"이라는 이벤트가 발생하면 어떠한 함수를 호출할 건지 리스너를 등록해준 것입니다.
이것을 이벤트 리스너 등록이라고 하는데 이 리스너를 등록했기 때문에 마우스 스크롤을 할 때마다 함수가 호출된 것입니다.
근데 이 해당 컴포넌트를 사용하지 않는데 이 리스너가 계속 등록되어있으면 안 되겠죠?!!
그렇기 때문에 이 리스너를 제거해주는 부분입니다.
그래서 질문해주신 부분은
컴포넌트를 사용하지 않게 될 때 스크롤에 대한 이벤트가 발생할 때 호출되는 함수를 더 이상 호출되지 않게 해당 이벤트 리스너를 지워주는 부분입니다.
감사합니다.