Throttling & Debouncing

HSKwon·2022년 6월 15일
0

-> Debouncing / Throttling

버튼을 그냥 숨기고 onchange일어날때마다 refetch하면, 바로 계속 리패치는 되고 가장 쉬운 방법이긴 하지만, 계속 graphql요청이 들어가기때문에 좋은 방법이 아니다.

- 디바운싱 (Debouncing)

특정작업의 특정시간내에서 그 작업이 반복되지 않으면 마지막만 데이터를 전송하는것

  • 쉽게 생각하면, 검색기능에서 검색어 '메'까지 입력하고 2초설정해놓은 동안 아무것도 안일어나면 '메'로 검색 refetch 1번 해주는것

- 쓰로틀링 (Throttling)

먼저 한 번 실행 후 , 특정시간동안 무시

  • 쉽게 생각하면, 무한스크롤에서 처음에 시행해서 패치하고 그 시간이 끝나면 패치. 스크롤이 조금 내려가면! 이라는 함수가 있는데, 계속 내려도 좀 무시
profile
공부한 내용이나 관심 있는 정보를 글로 정리하며 익숙하게 만들고자 합니다.

0개의 댓글