AUIGrid는 JSON 기반의 1차원 객체 배열 데이터를 기본으로 사용하며, 트리 구조, XML, CSV 형태의 데이터도 가공하여 사용할 수 있습니다.
각 데이터 항목은 한 행(Row)을 나타내며, 객체의 속성명은 그리드 컬럼의 dataField
설정 값과 일치해야 합니다.
[
{ "id": 1, "name": "홍길동", "product": "iPhone", "price": 1200000 },
{ "id": 2, "name": "김영희", "product": "Galaxy", "price": 950000 }
]
dataField
에 해당하는 key 값 사용// 그리드 칼럼 레이아웃 설정
const columnLayout = [
{ dataField: "id", headerText: "ID" },
{ dataField: "name", headerText: "이름" },
{ dataField: "product", headerText: "제품" },
{ dataField: "price", headerText: "가격", dataType: "numeric" }
];
<rows>
<row>
<id>1</id>
<name>홍길동</name>
<product>iPhone</product>
<price>1200000</price>
</row>
<row>
<id>2</id>
<name>김영희</name>
<product>Galaxy</product>
<price>950000</price>
</row>
</rows>
주의사항: AUIGrid는 XML을 직접 처리하지 않으며, 브라우저에서 DOMParser
등으로 JSON 변환 후 사용합니다. 따라서 성능적으로 JSON 이 우수합니다.
id,name,product,price
1,홍길동,iPhone,1200000
2,김영희,Galaxy,950000
주의사항: AUIGrid는 CSV를 문자열 파싱 후 JSON 배열로 변환 후 사용합니다. 따라서 성능적으로 JSON 이 우수합니다.
[
{
"name": "관리부",
"manager": "홍길동",
"children": [
{ "name": "총무팀", "manager": "김철수" },
{ "name": "회계팀", "manager": "이영희" }
]
}
]
참고 사항: AUIGrid에 삽입한 데이터가 children
을 갖는 계층적 데이터 구조(Hierarchical Data Structure)라면 그리드는 따로 설정없이 계층적 구조의 트리 그리드를 출력합니다.
만약 일반 1차원 객체 배열 데이터를 계층적 데이터 구조(Hierarchical Data Structure)로 표현하고자 하는 경우 반드시 3가지 속성을 설정해야 합니다.
// 그리드 속성 설정
const gridProps = {
// 일반 데이터를 트리로 표현할지 여부(treeIdField, treeIdRefField 설정 필수)
flat2tree: true,
// 트리의 고유 필드명
treeIdField: "id",
// 계층 구조에서 내 부모 행의 treeIdField 참고 필드명
treeIdRefField: "parent"
};
형식 | 사용 권장도 | 특징 | 처리 방식 |
---|---|---|---|
JSON | 매우 우수 | AUIGrid 표준 형식 | 바로 사용 가능 |
XML | 일반 | 구조 명확, 브라우저 파싱 필요 | JSON으로 변환 필요 |
CSV | 일반 | 단순 구조, 라인 기반 | 문자열 파싱 필요 |
dataType | 설명 | 정렬 기준 | 예시 |
---|---|---|---|
string | 문자열 | 알파벳 순 | "홍길동" |
numeric | 숫자 | 숫자 크기 | 1000, 3500 |
date | 날짜 | 날짜 순서 | "2024-01-01" |
boolean | 참/거짓 | false 우선 | false, true |
💡 TIP: 실시간 연동을 원한다면 JSON 구조를 사용하는 REST API 또는 fetch/ajax를 권장합니다.