Hook guard

Hooks 타입 경계

상태 초기값, effect cleanup, ref null, 사용자 정의 훅 반환 계약을 분리하면 훅 사용부가 단순해집니다.

useState

초기값으로 타입 결정

빈 값이 가능하면 `null`이나 로딩 상태를 명시하고 이후 guard로 좁힙니다.

User | null
useEffect

의존성과 정리 함수

비동기 요청, 구독, 타이머는 deps 변경과 cleanup 경로를 함께 설계합니다.

useRef

DOM null 처리

렌더 전 ref는 비어 있을 수 있으므로 접근 전 존재 여부를 좁혀야 합니다.

Custom

반환 계약 고정

사용자 정의 훅은 상태값, 명령 함수, 오류 상태를 일관된 객체나 튜플로 반환합니다.

as const