Skip to content

Conversation

@Db0111
Copy link
Collaborator

@Db0111 Db0111 commented Oct 29, 2025

#️⃣ 연관된 이슈

ex) #이슈번호, #이슈번호

📝 훅 간단 사용 설명

어떤 훅인지 간단하게 설명해주세요! (docs 내용 기반)

useCheckList

체크리스트 상태를 관리하는 커스텀 React Hook입니다.

아이템 목록의 체크 상태를 효율적으로 관리하며, 개별 아이템 조작부터 전체 일괄 처리까지 다양한 기능을 제공합니다. To-do 리스트, 다중 선택 테이블, 설문조사 등에 활용할 수 있습니다.

🔗 사용법

const checkList = useCheckList<ItemType>(initialItems);

매개변수

  • initialItems: T[]
    • 초기 아이템 배열
    • 각 아이템은 CheckableItem 인터페이스를 확장해야 합니다
    • idchecked 속성이 없는 단순 배열도 자동으로 변환됩니다

반환값

UseCheckListReturns<T> 객체

속성 타입 설명
list T[] 현재 관리 중인 아이템 리스트
set (items: T[]) => void 리스트 전체를 새로운 배열로 교체
isChecked (id: IdType<T>) => boolean 특정 아이템의 체크 여부 확인
isAllChecked () => boolean 모든 아이템이 체크되었는지 확인
checkItem (id: IdType<T>) => void 특정 아이템을 체크 상태로 설정
unCheckItem (id: IdType<T>) => void 특정 아이템을 체크 해제
toggleItem (id: IdType<T>) => void 특정 아이템의 체크 상태 토글
updateItem (id: IdType<T>, checked: boolean) => void 특정 아이템의 체크 상태를 명시적으로 설정
toggleAll () => void 모든 아이템의 체크 상태 반전
checkAll () => void 모든 아이템을 체크 상태로 설정
unCheckAll () => void 모든 아이템을 체크 해제
updateAll (checked: boolean) => void 모든 아이템의 체크 상태를 일괄 변경
getCheckedList () => T[] 체크된 아이템 배열 반환
getCheckedIds () => IdType<T>[] 체크된 아이템들의 ID 배열 반환
selectedCount number 체크된 아이템의 개수

스크린샷 (선택)

2025-10-29.5.15.15.mov

@Db0111 Db0111 self-assigned this Oct 29, 2025
@Db0111 Db0111 added the 훅 개발 New feature or request label Oct 29, 2025
@vercel
Copy link

vercel bot commented Oct 29, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
2025-fe-hookdle-docs Ready Ready Preview Comment Oct 29, 2025 8:17am

@github-actions
Copy link

🚀 테스트 결과

실행 시간: 2025년 10월 29일 17시 18분 07초
커밋: 8ea853d

📊 요약

  • Lint: ✅ 성공
  • Tests: ✅ 성공

📝 Lint Check

✅ Lint check passed

🧪 Tests

✅ Tests passed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

훅 개발 New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants