문제
다음과 같이 스토어에서 가져온 모든 값을 사용할 때 &&을 붙여야해서 생산성과 코드 가독성이 떨어진다.
발생 원인
유틸 리듀서에서 data의 타입이 T(현재 선언하지 않고, 나중에 지정할 수 있는 타입) 또는 null로 지정되어 있기 때문에 data를 nullable하다고 인식하여, 위의 사진에서 && 처리를 하지 않으면 '객체가 null인 것 같습니다' 라는 오류를 뱉는다.
해결 방법
-
data의 타입을 T로 선언한다.
-
기존의 에러 발생 시 data에 null을 넣어주던 부분을 initialData로 바꾼다. 이렇게 한 이유는 이전에 발생한 load() 이슈와 같다.
-
2번에서 asyncState 정의가 바뀌었으니 동일하게 바꿔준다.