import { StrictMode, useState } from "react" import { createRoot } from "react-dom/client" import { GNB, GNBBrand, GNBMobileMenu, GNBMobileLink, PageHeader, PageHeaderContent, PageHeaderTitle, PageHeaderDescription, Card, CardContent, FilterBar, FilterBarSearch, FilterBarActions, Select, SelectTrigger, SelectValue, SelectContent, SelectItem, Button, DataTable, DataTableColumnHeader, useDataTable, type DataTableColumnDef } from "@hm-design/ui" import "./index.css" import "./hm-theme.css" // GNB_ONLY: a small list page has one service header and mobile menu. No sidebar. type User = { id: string; name: string; department: string } const users: User[] = [{ id: "1", name: "김한맥", department: "디자인" }, { id: "2", name: "이한맥", department: "개발" }, { id: "3", name: "박한맥", department: "디자인" }] const columns: DataTableColumnDef[] = [{ accessorKey: "name", header: ({ column }) => }, { accessorKey: "department", header: "부서" }] function PublisherList() { const [query, setQuery] = useState("") const [department, setDepartment] = useState("all") const table = useDataTable({ columns, data: users, getRowId: row => row.id }) const apply = () => { table.setGlobalFilter(query || undefined); table.getColumn("department")?.setFilterValue(department === "all" ? undefined : department) } const reset = () => { setQuery(""); setDepartment("all"); table.resetGlobalFilter(true); table.resetColumnFilters(true) } return
사용자 목록HMDesign사용자 관리
사용자 목록부서와 검색어를 입력한 뒤 조회합니다.
{ event.preventDefault(); apply() }}>
} createRoot(document.getElementById("root")!).render()