useSelectionμ λͺ©λ‘ νμ΄μ§μμ 체ν¬λ°μ€λ₯Ό ν΅ν λ€μ€ μ νμ κ΄λ¦¬νλ ν
μ
λλ€. Shift+ν΄λ¦ λ²μ μ ν, μ 체 μ ν/ν΄μ λ±μ κΈ°λ₯μ μ 곡ν©λλ€.
ν΅μ¬ κΈ°λ₯
λ€μ€ μ ν
κ°λ³/μ 체 μ ν κ΄λ¦¬Set κΈ°λ° ν¨μ¨μ μν
λ²μ μ ν
Shift+ν΄λ¦ μ§μμ°μλ νλͺ© νλ²μ μ ν
μλ κ²μ¦
νμ΄μ§ λ³κ²½ μ μλ μ 리쑴μ¬νλ νλͺ©λ§ μ μ§
νμ μμ
μ λ€λ¦ νμ
μ§μany νμ
ν€ μ¬μ© κ°λ₯
κΈ°λ³Έ μ¬μ©λ²
Import λ° μ΄κΈ°ν
allIds: νμ¬ νμ΄μ§μ λͺ¨λ ν€ λ°°μ΄ (μ:[1, 2, 3, 4, 5])defaultSelectedKeys: μ΄κΈ° μ ν μν (μ ν μ¬ν, κΈ°λ³Έκ°:[])
κ°λ³ νλͺ© μ ν
getSelected(key): ν΄λΉ ν€κ° μ νλμμΌλ©΄true, μλλ©΄falsetoggle(key): μ ν μνλ₯Ό λ°λλ‘ λ³κ²½
μ 체 μ ν/ν΄μ
isAllSelected: νμ¬ νμ΄μ§μ λͺ¨λ νλͺ©μ΄ μ νλμλμ§selectAll(): νμ¬ νμ΄μ§μ λͺ¨λ νλͺ© μ νdeselectAll(): λͺ¨λ μ ν ν΄μ
Shift+ν΄λ¦ λ²μ μ ν
- μΌλ° ν΄λ¦: κ°λ³ νλͺ© μ ν/ν΄μ
- Shift+ν΄λ¦: λ§μ§λ§ μ ν μμΉλΆν° νμ¬ μμΉκΉμ§ λͺ¨λ μ ν
Shift+ν΄λ¦ λμ μ리
handleCheckboxClickμ λ§μ§λ§ ν΄λ¦ μΈλ±μ€λ₯Ό κΈ°μ΅νκ³ , Shift+ν΄λ¦ μ κ·Έ μ¬μ΄μ λͺ¨λ νλͺ©μ μ νν©λλ€.μ€μ μμ
μμ ν ν μ΄λΈ ꡬν
νμ΄μ§ λ³κ²½ μ μλ κ²μ¦
useSelectionμ allIdsκ° λ³κ²½λλ©΄ μλμΌλ‘ μ ν μνλ₯Ό κ²μ¦ν©λλ€.
μ μλ κ²μ¦μ΄ νμνκ°μ?νμ΄μ§λ₯Ό λκΈ°κ±°λ νν°λ₯Ό λ³κ²½νλ©΄
rowsκ° λ°λλλ€. μ΄μ νμ΄μ§μμ μ νν νλͺ©μ΄ μ νμ΄μ§μ μμ μ μμΌλ―λ‘, μλμΌλ‘ μ ν¨νμ§ μμ μ νμ μ κ±°ν©λλ€.μ νλ νλͺ©μΌλ‘ μμ
κ³ κΈ μ¬μ©
μ΄κΈ° μ ν μν
μ ν μν μ μ₯
μ‘°κ±΄λΆ μ ν μ ν
λ΄λΆ ꡬ쑰
useSelectionμ Map<T, boolean> κ΅¬μ‘°λ‘ μ ν μνλ₯Ό κ΄λ¦¬ν©λλ€.
- O(1) μκ° λ³΅μ‘λλ‘ λΉ λ₯Έ μ‘°ν
- ν€μ νμ μ μ½ μμ (number, string, object λͺ¨λ κ°λ₯)
- Setλ³΄λ€ νμ₯μ± λμ (μΆκ° λ©νλ°μ΄ν° μ μ₯ κ°λ₯)
νμ μμ μ±
useSelectionμ μ λ€λ¦μΌλ‘ ν€ νμ
μ μ§μ ν μ μμ΅λλ€.
μ£Όμμ¬ν
1. allIdsλ λ°λμ μ 곡
2. νμ΄μ§ λ³κ²½ μ μ ν μ μ§νκ³ μΆλ€λ©΄
κΈ°λ³Έμ μΌλ‘ νμ΄μ§λ₯Ό λκΈ°λ©΄ μ νμ΄ μ΄κΈ°νλ©λλ€. μ μ§νλ €λ©΄ λ³λ κ΄λ¦¬κ° νμν©λλ€.3. handleCheckboxClick μ¬μ© μ μ£Όμ
handleCheckboxClickμ <td>λ 체ν¬λ°μ€ 컨ν
μ΄λμ μ°κ²°ν΄μΌ ν©λλ€.
κ΄λ ¨ λ¬Έμ
- useListParams - λͺ©λ‘ νν°λ§κ³Ό ν¨κ» μ¬μ©
- Table μ»΄ν¬λνΈ - ν μ΄λΈ UI
- λͺ©λ‘ νμ΄μ§ ꡬν - μμ ν μμ