행복을 담는 블로그

[TIL] 24.03.28(목) data가 리렌더링 시 바로 들어오지 않음. 본문

TIL

[TIL] 24.03.28(목) data가 리렌더링 시 바로 들어오지 않음.

hyun0zin 2024. 3. 29. 03:23

data 불러오기 pending 상태 후 → data 값이 들어온다.

  • data가 undefined는 아님
  • data가 pending 상태에서 시간 경과 후 data가 들어옴. useState로 상태 관리를 하면, 처음 렌더링이 될 때 들어오는 값을 받아서 상태가 바뀌기 때문에, 새로고침 후 바로 input 창으로 정보가 안 들어옴.
  • api 호출이 너무 많이 일어나거나, 중복으로 data를 불러오고 있으면 발생할 수 있는 문제이다.

🧐 해결 방법

  1. 데이터 캐싱 : 데이터를 불필요하게 매번 호출하지 말고, 한 번 불러온 데이터를 캐싱하여 재사용하자.
  2. 데이터 로딩 상태 관리 : 데이터가 로딩 중일 때 적절한 로딩 상태를 관리하여 현재 데이터가 불러오고 있음을 알려주자
  3. 모든 컴포넌트에서 모든 유저 정보를 사용할 필요가 없다. 필요한 데이터만 요청하고 사용하자.
  4. 프론트엔드 최적화 : 필요한 데이터만 요청하고 불필요한 데이터를 제거하여 요청 시간을 최적화하자. 비동기 처리하자
  5. 백엔드 최적화 : 쿼리를 최적화하고 데이터베이스 인덱싱을 설정하여 데이터 요청 시간을 최소화하자.