[JavaScript] ExtJS - Ext.data.Store

ITWeb/개발일반 2013. 5. 15. 17:02

ExtJS API : http://docs.sencha.com/extjs/4.2.0/#!/api/Ext.data.Store

여러 형태의 데이터를 저장.

주로 json 형태의 데이터를 처리 또는 key:value 처리.


사용 예) ajax 로 이미 데이터를 loading 한 후 local data 를 넘겨 주는 방식 (ajax 호출을 따로 하고 싶지 않을 경우 proxy 부분에서 직접 구현 해도 됨)

ESDataListControl.dataStore = new Ext.create("Ext.data.Store", {

                        autoLoad: true,

                        queryMode: "local",

                        fields: columns,

                        pageSize: ESDataListControl.pageSize,

                        currentPage: ESDataListControl.currPage,

                        proxy: {

                            type: "memory",

                            reader: {

                                type: "json",

                                totalProperty: "hits.total",

                                root: "hits.hits"

                            }

                        },

                        data:ESDataListControl.jsonResult

                    });

        ESDataListControl.totalDocSize = ESDataListControl.dataStore.getTotalCount();


API 간단 설명)

- fields : grid 에 보여 줄때 column 명에 해당 하는 항목

- totalProperty : 읽어 온 데이터의 총 수

- root : 읽어 온 json string 에서 데이터에 해당하는 root key name

예) { hits:{total:111, hits:{data:[...]}}}

: