
Zustand Store 타입 지정: TypeScript로 state와 action 안전하게 관리하기
이 글에서 정리하는 내용 Zustand Store에 TypeScript 타입을 붙일 때는 상태 값만 보는 것으로 끝나지 않습니다. Store가 어떤 값을 가지고, 그 값을 어떤 action으로만 바꿀 수 있는지 하나의 계약으로 잡아야 합니다. 작은 카운터 Store에서는 차이가 늦게 보이지만, 유저 정보·모달·필터·장바구…
더 읽기정적 타입을 기반으로 JavaScript의 안정성과 유지보수성을 강화하는 TypeScript를 다룹니다.

이 글에서 정리하는 내용 Zustand Store에 TypeScript 타입을 붙일 때는 상태 값만 보는 것으로 끝나지 않습니다. Store가 어떤 값을 가지고, 그 값을 어떤 action으로만 바꿀 수 있는지 하나의 계약으로 잡아야 합니다. 작은 카운터 Store에서는 차이가 늦게 보이지만, 유저 정보·모달·필터·장바구…
더 읽기
이 글에서 정리하는 내용 Type instantiation is excessively deep 오류는 TypeScript가 제네릭 타입을 끝까지 펼치다가 한계를 만났다는 신호입니다. 재귀 조건부 타입, 깊은 infer, 라이브러리 타입 조합, 과한 as c…
더 읽기
이 글에서 정리하는 내용 React Hook Form에 zodResolver를 붙였는데 schema, defaultValues, optional 처리 때문에 타입이 맞지 않는 상황을 기준으로 원인을 좁히고, 실제 프로젝트에서 어떤 설정과 코드 구조를 확인해야 하…
더 읽기
이 글에서 정리하는 내용 Zustand store를 만든 뒤 컴포넌트에서 state를 읽고 action으로 변경하는 흐름을 정리합니다. 단순히 값을 가져오는 문법보다, 컴포넌트가 어떤 값에 의존하는지 좁히고 변경 규칙을 store 안에 모으는 기준을 중심으로 봅니다. …
더 읽기
이번 단계에서 정리하는 내용 Zustand를 React 프로젝트에 설치하고, 컴포넌트 밖에 기본 Store를 만든 뒤 필요한 상태와 액션만 꺼내 쓰는 흐름을 정리합니다. 설치 명령어보다 더 오래 남겨야 할 기준은 안에서 상태와 상태 변경 함수를 어떤 책임으로 묶을지입니…
더 읽기
이번 학습을 통하여 이 문서는 TypeScript의 조건부 타입과 infer를 처음 접하는 분도 쉽게 이해할 수 있도록 다시 정리한 학습용 버전입니다. 복잡한 타입을 자동으로 추출하거나 배열과 함수·API 타입을 분석하는 방법을 단계별로 배울 수 있게 구…
더 읽기
이 글에서 정리하는 내용 저는 이 글에서 TypeScript 6.0을 처음 접하는 주니어 개발자도 흐름을 따라올 수 있도록, 어려운 용어를 먼저 쉬운 말로 풀고 기존 방식과 비교하면서 설명해보겠습니다. 단순히 무엇이 추가됐는지 나열하는 것이 아니라, 왜 바뀌었는지와 내…
더 읽기
주요 포인트 한눈에 보기 이 글은 완성된 포트폴리오 코드를 기준으로 Next.js + TypeScript + Firebase를 사용할 때 어떤 방식으로 제작되었는지 프로젝트를 분석합니다. 그 중 이번 챕터에서는 firebase.ts 초기화 …
더 읽기