← 카탈로그

🗂️ CommonTable

정렬 · 페이지 · 체크박스 선택까지 기본 제공. 45건 데이터로 페이징 동작 확인.

라이브 데모

선택: 0 건
총 45 건
ID이름역할상태점수가입일
1사용자1관리자비활성972025-01-01
2사용자2매니저활성292025-02-02
3사용자3일반활성232025-03-03
4사용자4게스트비활성862025-04-04
5사용자5관리자활성802025-05-05
6사용자6매니저활성232025-06-06
7사용자7일반비활성322025-07-07
8사용자8게스트활성362025-08-08
9사용자9관리자활성632025-09-09
10사용자10매니저비활성722025-10-10
1 / 5

사용법

import { CommonTable, type Column } from "~/features/common";

const cols: Column<User>[] = [
    { key: "id", header: "ID", width: 60, align: "right" },
    { key: "name", header: "이름" },
    { key: "role", header: "역할",
      render: (r) => <span className="badge badge-primary">{r.role}</span> },
];

<CommonTable
    rows={users} columns={cols}
    rowKey={(r) => r.id}
    pageSize={20}
    selectable selected={sel} onSelectedChange={setSel}
    onRowClick={(r) => nav(`/users/${r.id}`)}
/>