Zustand middleware

Zustand 미들웨어는 state creator를 감싸 저장과 디버깅 기능을 붙인다

persist와 devtools는 상태 타입과 액션 타입을 유지한 채 스토어 생성 시점에 동작을 확장한다.

01 state creator상태, 액션, 초기값 선언

타입 계약의 원천이 된다.

02 middleware wrappersist/devtools가 감쌈

스토어 동작을 확장한다.

03 store hook컴포넌트가 구독

사용법은 기존 hook과 같다.

04 tools/storage디버깅과 복원

액션 추적과 선택 상태 저장을 담당한다.

구분의미판단
devtools액션 이름과 상태 변화 추적디버깅 근거 확보
persist선택 상태 저장민감 정보와 임시 상태는 제외
selector필요한 조각만 구독불필요한 렌더링 감소

핵심 persist는 모든 상태 저장 장치가 아니라 복원 가치가 있고 민감하지 않은 일부 상태만 고르는 확장이다.