본문 바로가기
02_STUDY/React

useQuery 쓸 때, Query data cannot be undefined 에러

by zestlumen 2023. 10. 16.

useQuery를 쓰는 데 아래와 같은 에러가 나타났다.

 

 

이런 에러는 데이터 쿼리나 데이터 처리 작업을 수행하는 코드에서

데이터가 예상대로 정의되지 않았을 때 자주 발생된다고 한다.

쿼리함수에서  undefined가 아닌 유효한 값을 반환하도록 리턴해주라고 한다.

 

 

 

원인은 이 코드에서 중괄호를 썼기 때문이다.

 

useQuery(['carts'], () =>  getCart(uid) );

 

위와 같이 중괄호를 사용하지 않아야 화살표 함수는 getCart(uid)의 결과를 반환한다.

중괄호 내부에 코드를 쓰게 되면 함수가 실행은 되지만 반환할 값이 따로 명시되어 있지 않을 시에

어떤 값도 반환하지 않으므로 undefined를 반환하게 된다.