Web Development/vue
전체선택/해제 함수 구조 분석
쟤리
2024. 10. 15. 11:24
728x90
반응형
const selectAll = async () => {
if (tableRef.value) {
if (allSelected.value) {
tableRef.value.clearSelection() // 선택 해제
} else {
tableRef.value.toggleAllSelection() // 전체 선택
}
}
}
tableRef.value 확인
if (tableRef.value) {
- 이 조건문은 tableRef가 유효한 엘리먼트 참조를 가지고 있는지 확인합니다.
- tableRef는 <el-table> 컴포넌트에 대한 참조로, Element Plus의 ref를 사용하여 테이블의 인스턴스에 접근합니다.
allSelected.value 확인
if (allSelected.value) {
tableRef.value.clearSelection() // 선택 해제
} else {
tableRef.value.toggleAllSelection() // 전체 선택
}
allSelected.value는 현재 전체 선택 상태를 나타냅니다.
- true일 경우: 이미 모든 항목이 선택된 상태이므로 선택을 해제합니다.
- false일 경우: 모든 항목을 선택합니다.
tableRef.value.clearSelection()
tableRef.value.clearSelection() // 선택 해제
- clearSelection()은 선택된 모든 항목을 해제하는 Element Plus 테이블의 메서드입니다.
tableRef.value.toggleAllSelection()
tableRef.value.toggleAllSelection() // 전체 선택
- toggleAllSelection()은 모든 항목을 선택하거나 선택을 해제하는 메서드입니다.
- 이 메서드는 현재 선택 상태를 토글(toggle)하여 전체 항목의 상태를 변경합니다.
- 전체 선택
- 사용자가 "전체 선택" 버튼을 누르면 toggleAllSelection() 메서드가 호출됩니다.
- 테이블의 모든 항목이 선택됩니다.
- 전체 해제
- 모든 항목이 선택된 상태에서 사용자가 "전체 해제"를 클릭하면 clearSelection() 메서드가 호출됩니다.
- 모든 항목의 선택이 해제됩니다.
728x90
반응형