콘텐츠로 이동
Data Table실행 예제

좌우 컬럼 고정과 배치 복원

comins-table@0.2.2React

Name을 왼쪽, Status를 오른쪽에 고정하고 가로 스크롤·폭 축소·배치 복원을 확인합니다.

  1. 가로 스크롤바를 오른쪽으로 움직입니다. Name과 Status는 해당 가장자리에 남고 가운데 Team·Email·Region은 스크롤됩니다.
  2. 배치 저장 → 고정 해제를 누릅니다. 모든 컬럼이 가운데 영역으로 바뀝니다. 저장 배치 복원으로 고정 설정을 되돌립니다.
  3. 260px 폭을 누릅니다. 고정 폭이 가용 공간을 초과하면 일부 고정 열이 임시로 스크롤 영역에 들어갑니다.
  4. 설정 조회로 pinned 값이 남아 있음을 확인하고 원래 폭으로 돌아옵니다. 공간이 확보되면 고정 표시가 복원됩니다.
값/API 역할
columns[].pinned "left" 또는 "right"로 초기 고정 위치를 지정합니다.
getColumnLayout() 현재 order, width, visibility, pinned 설정을 조회합니다.
setColumnLayout(layout) 조회한 구조를 다시 적용합니다. 원본 행 데이터의 저장·복원은 아닙니다.
onChangeColumnLayout 예제의 배치 JSON 표시를 갱신합니다.

저장 버튼은 메모리에 snapshot을 보관합니다. 페이지를 새로고침하면 저장값이 사라집니다. ID가 같은 컬럼 정의와 호환되는 배치를 사용하십시오. 조회와 변경은 별도 이벤트에서 수행합니다.

패키지는 가운데 스크롤 영역에 최소 48px를 확보합니다. 고정 너비가 이를 침범하면 더 넓은 쪽의 안쪽 고정 블록부터 임시 해제하며, 같은 너비이면 오른쪽이 우선입니다. 이 예제는 left 140px, right 130px입니다. 260px에서는 Name의 effective pin이 해제될 수 있지만 저장된 pinned: "left" 설정은 유지됩니다.

이 표시 조정은 구성 값을 바꾸거나 onChangeColumnLayout을 발생시키는 작업이 아닙니다. 고정된 컬럼의 직접 resize 제한과 컨테이너 resize에 따른 임시 해제는 다른 동작입니다.

이 예제는 flat data의 Header/Body와 개별 열을 다룹니다. Header Group, Summary 경계, resize gesture, Tree 조합을 모두 검증하는 예제가 아닙니다. Tree에는 Column Pinning을 적용하지 않습니다.

컬럼 고정 가이드 · getColumnLayout · setColumnLayout