• 카테고리

    질문 & 답변
  • 세부 분야

    프론트엔드

  • 해결 여부

    미해결

안녕하세요 제로초님 DirectMessage 페이지 구현중에 문제가 생겼습니다.

22.04.21 01:18 작성 조회수 171

0

문제가 발생한 부분이 아래 코드와 같이

Header 컴포넌트에서 userData와 myData값을 사용하지 않고 useSWR로 userData와 myData를 불러오면 문제 없이 데이터를 불러올 수 있습니다.

그러나 아래와 같이 주석을 풀면

 

useSWR에서 값을 불러오면 아래 결과와 같이 undefined로 나오는 문제가 발생합니다.

그래서 결과화면에는 TypeError Cannot read properties of undefined(reading 'email')이라는 에러 문구만 나오게 되는 상황인데

 

이 기묘한 문제가 왜 발생하는지와 해결법을 알 수 있을까요..?

 

swr의 버전은 1.2.2이며 fetcher코드는 아래입니다.

 

 

 

 

 

 

 

 

 

 

답변 1

답변을 작성해보세요.

0

일단 Fetcher에서는 return axios만 하시면 됩니다. await 필요없습니다.

swr의 data는 undefined일 수 있습니다. 데이터를 서버로부터 불러오는 중에는 undefined가 됩니다.

userData가 !== undefined일 때 화면을 표시하도록 바꿔보세요.

신윤석님의 프로필

신윤석

질문자

2022.04.21

감사합니다! 제로초님! 덕분에 해결했습니다!