일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 추천
- Pink
- 레고
- 시사회
- 핑크
- 게임
- 아이러브니키
- 강추
- 일상
- 감상
- 잡담
- goblin sword
- 아이폰게임
- 카이로소프트
- 모뉴먼트 밸리
- Monument Valley
- 가사
- php
- 아이패드
- great forest
- jQuery
- 아이폰
- 유료
- JavaScript
- Monument
- 맛집
- 모뉴먼트
- 공략
- 영화
- 후기
- Today
- Total
잡담소장소
ag-grid 사용기 본문
프로젝트 요청사항에 ag-grid가 있어서 어쩔 수 없이(?) 사용해보았다.
처음 사용할 땐 역시 getting started.
간단하게 적용할 땐 문제 없는데 몇 가지 적용하려고 하니 guide의 부실함이 느껴졌다.
열심히 업데이트 중이라 코드와 가이드의 갭이 크다 'ㅁ'...
기본적으로 사용하는 방식은 아래와 같다
var columnDefs = [
{headerName: "Make", field: "make"},
{headerName: "Model", field: "model"},
{headerName: "Price", field: "price"}
];
var rowData = [
{make: "Toyota", model: "Celica", price: 35000},
{make: "Ford", model: "Mondeo", price: 32000},
{make: "Porsche", model: "Boxter", price: 72000}
];
var gridOptions = {
columnDefs: columnDefs,
rowData: rowData
};
document.addEventListener("DOMContentLoaded", function() {
var eGridDiv = document.querySelector('#myGrid'); //jquery 변환가능
new agGrid.Grid(eGridDiv, gridOptions);
});
columnDefs
- headerName: 리스트에 노출할 항목 명
- field: rowData에 들어가 있는 key값
rowData
- object, server에서 array를 json 받아서 사용
gridOptions
- grid 관련 기능들 추가할 수 있다
그 외에 내가 사용했던 option들
gridOptions
- enableSorting: true | fales(default) //정렬기능을 제공한다, header 클릭 시 [asc, desc, null] 순으로 정렬, 정렬 순서와 정렬 종류는 변경이 가능하다
- rowSelection: 'single' | 'multiple' | none(default) //row 선택기능, 수정하거나 가져올 때 필요
- onCellDoubleClicked: function(){} //셀 더블 클릭 시 이벤트 발생. 해당 셀 값을 가져오기 위해서 썼음
- onModelUpdated: function(){} //grid 변경 시 업데이트할 때 호출하는 함수, row 개수 가져오기 위해 썼음
- isExternalFilterPresent, doesExternalFilterPass: 검색 기능, isExternalFilterPresent가 true일 경우 doesExternalFilterPass 함수가 실행, input, select 값 변경하여 검색할 때 썼음
columnDefs
- suppressSorting: true // enableSorting이 true일 경우 모든 header 클릭이 가능한데 이걸 못하게 하는 옵션.
- sort: 'asc' | 'desc' //grid에서 처음 노출될 때의 정렬방식
- cellRender: function(params){ return .. } //matching된 value를 grid에 노출 전에 변경
아까부터 이야기하는 거지만 guide가 올드 버전이고
사용자의 의견을 개발자가 적극 반영하고 있던 터라 매우 자주 바뀌..는 것 같다
안되거나 필요한 기능은 구글 검색하거나 함수를 출력하여 확인하는 것이 빠르다 ㅠ
그리고 가능하면 최신버전을 쓰자 ;ㅅ;
(ex. gridOptions.api.getModel()의 함수 중 getRowCount가 getVirtualRowCount로 변경됨)
'Study ;3' 카테고리의 다른 글
[javascript] 이미지 로드 시 실패할 경우(404) 대체 이미지 처리 (0) | 2017.08.25 |
---|---|
angular material (0) | 2017.04.13 |
angularjs 2 hello world (0) | 2016.02.23 |
키체인에 공개키 추가하기 in Mac (0) | 2015.09.15 |
xcode - iCloud의 key-value 처음 사용해보기 (0) | 2015.09.15 |