reopt design
DocsExploreTemplatesCanvasToolsPricing
로그인
opt-uiopt-chartsopt-datagridopt-editoropt-calendaropt-filemanageropt-chatopt-shellbrandapp-ui
Overview205Core74Shells99Blocks32
DataTable
reopt designreopt design

AI 시대를 위한 디자인 시스템

  • 문서
  • 가격
  • 릴리즈 노트
  • 소개
  • 문의
  • 서비스 약관
  • 개인정보처리방침

주식회사 리옵트사업자등록번호 217-88-02453contact@reopt.ai

© 2026 reopt Inc. All rights reserved.

DataTable

셸

제네릭 데이터 테이블. 제목은 opt-in이고 ariaLabel로 grid를 이름 붙이며, 동적 컬럼·안전 정렬·키보드 리사이즈·Composite 탐색을 지원합니다.

data
관련 문서
bun add @reopt-ai/opt-ui
설치 및 가져오기
bash
bun add @reopt-ai/opt-ui
tsx
import { DataTable } from "@reopt-ai/opt-ui";

라이브 미리보기

화면 너비와 테마를 바꾸고 컴포넌트를 직접 조작해 보세요.

100%

기본 사용

사용자 목록

이름이메일역할상태완료율
김철수kim@example.comAdmin활성0.82
이영희lee@example.comEditor활성1.2
박민수park@example.comViewer비활성—
최지은choi@example.comEditor활성-0.15
정우성jung@example.comViewer활성0.46

헤더를 눌러 정렬하고, 컬럼 경계에 포커스한 뒤 ←/→(Shift는 40px)로 너비를 바꿀 수 있습니다. 완료율은 범위를 벗어나거나 NaN이어도 0–100% 사이로 안전하게 표시됩니다.

빈 상태

등록된 사용자가 없습니다

사용 가이드

권장 사용법

  • keyExtractor에는 정렬·필터 후에도 유지되는 행 ID를 사용합니다. 보이는 title이 없으면 ariaLabel로 grid 이름을 지정합니다.
  • 컬럼 accessor는 행 타입에 맞춰 선언하고, 서버 조회·편집·대규모 가상화가 필요하면 opt-datagrid의 계약을 검토합니다.

주의할 사용법

  • 배열 인덱스를 행 식별자로 사용하거나 비어 있는 헤더로 액션 컬럼을 익명화하지 않습니다. headerHidden을 사용합니다.

사용 예제

기본 테이블
선택 + 정렬

DataTable

Prop타입기본값설명
data필수T[]—테이블 데이터 배열
columns필수ColumnDef<T>[]—컬럼 정의. { id, header, accessor, width?, align? }
keyExtractor필수(row: T) => string—각 행의 고유 키 추출 함수
titlestring—테이블 위에 표시할 제목. 생략하면 제목 영역을 렌더하지 않음
ariaLabelstring—보이는 제목이 없을 때 grid에 제공할 접근 가능한 이름
onRowClick(row: T) => void—행 클릭 핸들러
emptyMessagestring"No data available"데이터 없을 때 표시할 메시지
labelsDataTableLabels—선택·리사이즈·펼치기처럼 스크린리더만 듣는 문구. 보이는 문구는 columns와 emptyMessage가 이미 호출자의 것입니다

ColumnDef

Prop타입기본값설명
headerHiddenbooleanfalse이름은 두되 그리지 않음. 행 액션처럼 제목이 필요 없는 컬럼용 — 빈 header는 컬럼을 익명으로 만듭니다
bar(row: T) => number—인라인 프로그레스 바 비율(0-1) 계산 함수. 범위 밖/NaN은 보정
barColorstring"bg-accent"인라인 바 색상 클래스

컴포넌트 의존 관계

깊이
▲ USED BY (17)▼ USES (3)tree-tableinline-edit-tablealert-managerbilling-pageproject-settingssegment-manageruser-exploreracquisition-analysisfunnel-analysisbreakdown-analysispath-analysiscohort-comparisondebug-workspaceuser-detailproject-overviewdata-explorerworkflow-run-historyDataTablecomposite-zonebuttoncheckbox
테스트 결과 자세히 보기

테스트 커버리지

2026년 7월 9일5/5 통과
5성공
0실패
5전체
  • grid role을 렌더링한다
  • 컬럼 헤더를 렌더링한다
  • 데이터 행을 렌더링한다
  • 빈 상태 메시지를 표시한다
  • onRowClick 핸들러를 호출한다

키보드 동작

키동작
↑ ↓행 탐색
← →셀 탐색
Enter / Space정렬 가능한 헤더 또는 행 활성화
리사이즈 핸들: ← →컬럼 너비를 10px 단위로 조절
리사이즈 핸들: Shift+← Shift+→컬럼 너비를 40px 단위로 조절
리사이즈 핸들: Home / End컬럼 너비를 최솟값/최댓값으로 이동

이 컴포넌트를 쓰는 블록

opt-ui

AcquisitionAnalysis

Blocks

획득 분석 Surface. 3탭(Overview, Channels, Campaigns) + StatCard + LineChart + DataTable 조합.

opt-ui

AlertManager

Blocks

알림 관리 Surface. DataTable + AlertBuilder 조합.

opt-ui

BillingPage

Blocks

빌링 페이지 Surface. StatCard + BarChart + DataTable 조합.

opt-ui

BreakdownAnalysis

Blocks

분석 Surface. 4탭(Trend, Distribution, Composition, Data) + 다중 차트 + DataTable 조합.

opt-ui

CohortComparison

Blocks

코호트 비교 Surface. ComparisonChart + RetentionHeatmap + DataTable + N-cohort 지원 (최대 5개). 4탭 조합.

opt-ui

DataExplorer

Blocks

필터링 가능한 데이터 탐색 영역. `spacing="group"` BlockLayout 안에서 SearchCombobox + StatusSelect + DataTable을 조합.

opt-ui

DebugWorkspace

Blocks

E2E 테스트 디버깅 워크스페이스. 2-pane 레이아웃 — 사이드바 테스트 목록 + 탭 콘텐츠 뷰어 (Video/Screenshots/Network/Console/Trace).

opt-ui

FunnelAnalysis

Blocks

퍼널 분석 Surface. StepBuilder + 3탭(Funnel, Breakdown, Trend) + FunnelChart + DataTable 조합.

opt-ui

PathAnalysis

Blocks

경로 분석 Surface. 설정 사이드바(단계 소스·시작/종료점·단계 수·행 수·제외·반복 병합·URL 그룹핑·최소 세션·세그먼트) + PathFlowChart(grid/sankey) 흐름 탭 + Top Paths/Drop-off/Patterns/Entry-Exit/Dwell 탭 조합.

opt-ui

ProjectOverview

Blocks

프로젝트 개요 Surface. SummaryRow + NavCards + LineChart + BarChart + DataTable + CodeSnippetViewer + Dashboard CRUD 조합.

opt-ui

ProjectSettings

Blocks

프로젝트 설정 Surface. SettingsForm + DataTable + CodeSnippetViewer + Retention Policy + Cleanup Preview + Storage Usage 조합.

opt-ui

SegmentManager

Blocks

세그먼트 관리 Surface. DataTable + SegmentBuilder 조합.

opt-ui

UserDetail

Blocks

사용자 상세 프로필 Surface. Avatar + StatCard + GaugeChart + Progress + DataTable + FilterBar 조합.

opt-ui

UserExplorer

Blocks

사용자 탐색 Surface. DataTable + FilterBar 조합.

opt-ui

WorkflowRunHistory

Blocks

워크플로우 실행 이력 화면. 검색/상태 필터 + DataTable + 상세 Dialog 탭 뷰 조합.

관련 컴포넌트

opt-ui

TreeTable

Shells

계층형 트리 테이블. 재귀 행 렌더링 + 펼침/접기 셰브론.

opt-ui

InlineEditTable

Shells

인라인 편집 테이블. 더블클릭으로 셀 편집, Enter 확정, Escape 취소.

opt-ui

DomainTable

Shells

도메인 테이블. Composite 기반 그리드로 키보드 탐색 지원.

opt-ui

QueryResultsTable

Shells

쿼리 결과 테이블. 타입이 표시되는 헤더, 로컬 정렬, 컬럼 리사이즈, 행 상세 패널을 갖추고 행을 윈도잉해 만 행도 스크롤로 다룹니다. NULL·불리언·객체를 빈칸 대신 글자로 씁니다.

opt-ui

WidgetGrid

Shells

위젯 그리드. react-grid-layout 래퍼로 드래그/리사이즈 가능한 대시보드 위젯을 배치합니다.

opt-ui

KanbanBoard

Shells

칸반 보드. HTML5 DnD로 카드를 컬럼 간 드래그&드롭.

이전DomainTable다음NotificationToast