todo state

Todo 앱은 작은 기능으로 상태 전이의 기본을 연습한다

입력, 추가, 토글, 삭제, 필터링 흐름을 나누면 어떤 이벤트가 어떤 state를 바꾸는지 기준이 생긴다.

input

입력 상태

사용자가 치는 임시 값은 input state로 관리하고, 빈 값 제출은 막는다.

draft
add

항목 추가

새 todo에는 id, text, completed 같은 최소 구조를 안정적으로 부여한다.

create item
toggle

완료 전환

기존 배열을 직접 바꾸지 않고 대상 항목만 새 객체로 교체한다.

immutable update
delete

삭제 처리

filter로 제거하고, 삭제 후 빈 목록 UI도 자연스럽게 보이게 한다.

제거 경로
verify

흐름 검증

추가, 토글, 삭제를 순서대로 눌러 상태와 화면이 함께 바뀌는지 본다.

사용자 점검