가져오기

import-grid.ts
import { NuiGrid, NuiGridCell, type NuiGridColumn } from '@needless-ui/angular/grid';

NuiGrid

네이티브 표로 만든 데이터 그리드입니다.

셀렉터
nui-grid
NuiGrid: 속성
이름타입기본값설명
rows양방향readonly T[]데이터. 편집하면 행이 교체되므로 [(rows)]로 바인딩합니다.
columns입력NuiGridColumn<T>[]열 목록. NuiGridColumn 객체로 지정합니다.
rowId입력(row: T) => unknownrow.id ?? row선택과 추적에 사용하는 행의 키.
label입력string그리드의 접근 가능한 이름.
selection입력'none' | 'single' | 'multiple''none'행을 선택할 수 있는지, 몇 개까지 선택할 수 있는지.
selected양방향unknown[][]선택된 행의 키 목록.
sort양방향NuiGridSort[][]정렬. { column, direction } 객체로 지정하며, 앞에 있는 것이 먼저 적용됩니다.
filters양방향Record<string, NuiGridFilter>{}열 id별 필터. 연산자와 값으로 지정합니다.
search양방향string''한 행에 모두 나타나야 하는 단어.
pageSize양방향number0페이지당 행 수. 0이면 스크롤되는 하나의 목록이 됩니다.
page양방향number0표시할 페이지. 0부터 셉니다.
pageSizes입력number[][10, 25, 50, 100]페이저에 표시되는 선택지.
virtual입력boolean | 'auto''auto'보이는 행만 렌더링합니다: 항상, 안 함, 또는 페이지를 나누지 않을 때 100행을 넘으면 켜지는 auto.
height입력string그리드의 높이를 제한하는 CSS 길이. 그리드 안에서 스크롤됩니다.
columnState양방향NuiGridColumnState[][]저장하고 복원할 수 있는 각 열의 너비, 순서, 고정, 표시 여부.
mode입력'client' | 'server''client'server는 받은 행을 그대로 표시하고, 정렬, 필터링, 페이지 나누기는 직접 처리하도록 맡깁니다.
total입력number서버에 있는 행의 수.
loading입력booleanfalse진행 표시줄을 보여 주고, 행이 없는 동안에는 자리 표시자 행을 보여 줍니다.
locale입력stringLOCALE_ID숫자와 날짜의 서식을 지정하고 입력된 숫자를 읽는 데 사용하는 로케일.
labels입력Partial<NuiGridLabels>그리드가 표시하거나 읽어 주는 모든 텍스트. 번역할 때 사용합니다.
corners입력NuiCorners모서리 모양: round, squircle, bevel, scoop, notch, square 중 하나.
radius입력NuiRadius모서리 크기: none, small, medium, large, full 중 하나.
density입력NuiDensity차지하는 공간: compact, regular, roomy 중 하나.
rowActivate출력TEnter 키나 더블클릭으로 연 행을 내보냅니다.
cellEdit출력NuiGridEdit<T>확정된 편집을 하나씩 내보냅니다.
queryChange출력NuiGridQuery정렬, 필터, 검색, 페이지가 바뀔 때마다 이를 내보냅니다.
exportCsv메서드(options?) => string필터링하고 정렬한 행을 보이는 열만 CSV로 반환합니다.
focusCell메서드(row: number, col: number) => void셀에 포커스를 줍니다. 행 -1은 헤더입니다.
clearFilters메서드() => void모든 필터와 검색을 지웁니다.

설정하지 않은 커스터마이징 입력은 가장 가까운 data-nui-* 속성을 따릅니다. 자세한 내용은 커스터마이징 가이드를 참고하시기 바랍니다.

NuiGridColumn

열 하나입니다. id와 header만 필수입니다.

NuiGridColumn: 속성
이름타입기본값설명
id속성string고유한 값. 정렬, 필터, 열 상태에서 키로 쓰입니다.
header속성string헤더 텍스트.
value속성keyof T | ((row: T) => V)행의 키 또는 행을 받는 함수. 기본값은 row[id]입니다.
type속성'text' | 'number' | 'date' | 'boolean' | 'enum''text'맞춤, 정렬, 필터, 편집기를 결정합니다.
format속성Intl options | ((value, row) => string)숫자와 날짜에 쓰는 Intl 옵션, 또는 텍스트를 만드는 함수.
options속성NuiOption<V>[]enum 열의 선택지. NuiOption 객체로 지정합니다.
width, minWidth, maxWidth속성number픽셀 단위.
flex속성number남는 공간을 다른 flex 열과 나눠 가집니다.
align속성'start' | 'center' | 'end'기본값은 타입에 따라 다르며, 숫자와 날짜는 끝에 맞춥니다.
pinned, hidden속성'start' | 'end', boolean열의 초기 고정 상태와 표시 여부.
sortable, filterable, resizable, reorderable, hideable속성booleantrue각각 false로 끌 수 있습니다.
compare속성(a: V, b: V) => number사용자 지정 정렬.
editable, validate속성boolean | ((row) => boolean), (value, row) => string | null셀을 편집할 수 있는지 여부와, 값이 올바르지 않을 때의 메시지.
set속성(row: T, value: V) => T편집된 행을 만듭니다. 기본값은 새 값을 넣은 복사본입니다.

NuiGridCell

열의 셀을 그립니다. 컨텍스트에는 행, 그 값, 텍스트가 들어 있습니다.

셀렉터
ng-template[nuiGridCell]
NuiGridCell: 속성
이름타입기본값설명
nuiGridCell입력string열의 id.

NuiGridHeader

열의 헤더를 그립니다.

셀렉터
ng-template[nuiGridHeader]
NuiGridHeader: 속성
이름타입기본값설명
nuiGridHeader입력string열의 id.

NuiGridEmpty

행이 없을 때 표시되는 내용입니다. 컨텍스트로 필터 때문에 행이 숨겨졌는지 알 수 있습니다.

셀렉터
ng-template[nuiGridEmpty]