Grid Option, Grid API, Grid Events, Row Node 의 조합이다.
Option은 grid configure를 담당하는 속성값들, api는 grid가 생성되고 상호작용하는 메서드들, event는 grid에 의해 발생되는 이벤트들을 말한다.
Row Node : Grid의 row들은 Row Node Object로 나타내지고, 각각의 속성들을 갖는다.
grid column들과 interact할 수 있는 interface임
Column Properites, API, Colum Object로 구성됨
getFocusedCell : Focus된 Cell을 반환
getModel : table의 rowModel을 반환함.
Grid의 Row Models이란
Client-Side Row Model (CSRM):
Infinite Row Model (IRM):
Server-Side Row Model (SSRM):
Viewport
animateRows : Row Animation가능하게 하는 boolean 속성임
cacheQuickFilter : rowData에 대한 검색을 가능하게 해주는 속성, cache를 이용함
getContextMenu(enterprise) : 사용자가 오른쪽 마우스를 클릭했을때 contexnt menu를 보여주는 속성.
context menu에 대한 추가 custom 가능함.
getRowId(enterpise) : 각각의 row에 대한 unique key값을 줌.(그래야 row의 위치가 바뀌어도 선택된 상태가 유지됨)
groupAggFiltering(enterpise) : 그룹회된 열 데이터에 대한 특정 집계함수를 정의하고 필터링 조건 설정 가능함.
processDataFromClipboard : 클립보드로부터 데이터를 그리드에 붙여넣을 때 데이터를 어떻게 처리할지를 제어하기 위한 옵션임. => 데이터 변환 및 가공, 유효성검사, 데이터할당 등등 가능
gridOptions: {
// 다른 그리드 옵션들...
processDataFromClipboard: function (params) {
// 클립보드 데이터를 처리하는 사용자 지정 로직을 작성
// params 파라미터를 사용하여 클립보드 데이터 및 그리드 정보에 접근
// 예: 클립보드 데이터를 파싱하고 특정 셀에 할당
const clipboardData = params.data;
const rowIndex = params.range.startRow.rowIndex;
const colId = params.range.columns[0].colId;
const cellToAssign = clipboardData[0]; // 예시로 첫 번째 데이터 할당
// 클립보드 데이터를 특정 셀에 할당
params.api.setValue(cellToAssign, rowIndex, colId);
},
}
readOnlyEdit : 데이터 수정시 수정사항이 그리드에 반영되지 않음.
suppressAggFuncInHeader : 집계함수가 표시되는지 여부를 나타냄
true이면 집계함수가 열 헤더에 표시되지 않도록 함.
suppressRowDrag : RowDrag하는 아이콘을 없애는 기능. true라면 Drag Icon을 표시하지 않음.(Drag기능 사용 X)
onCellEditRequest : Read Only Edit 가 true라면, 데이터를 수정했을때 그리드의 데이터가 수정되는 것이 아니라 onCellEditRequest라는 event가 fire됨.
onGridReady : 그리드가 초기화되고 그리드 API에 ACCESS 할 준비가 되었을 때 호출되는 콜백함수를 정의함 (초기화작업을 주로 진행하는 콜백함수 등록)