Ext Store用法

后台返回数据

一般在ExtStore的子类有ArrayStore, DirectStore, GroupingStore, JsonStore, XmlStore比较常用的有两种:SimpleStoreJsonStore

1.直接使用Store

var MyRecord = Ext.data.Record.create([

    {name : 'rjp.fuelPhotoId'},

    {name : 'dateString'},

    {name : 'enterName'}

    ]);

    var dataProxy = new Ext.data.HttpProxy(

            {

                url:'runlog/findAllPhoto.action'

            }

    );

    var theReader = new Ext.data.JsonReader({

        root : "list",

        totalProperty : "totalCount"

    }, MyRecord);

    var store = new Ext.data.Store({

        proxy : dataProxy,

        reader : theReader

    });

a.      每个store最少需要两个组件的支持,分别是proxyreaderproxy用于从某个途径读取原始数据,reader用于将原始数据转换成Record实例。

b.      Store内部并不知道数据对象的格式 (它可能是一个Array, XML或者JSON) Store对象使用一个 DataReader 类的可配置实现从数据对象创建 Record 的实例。

c.      Store中的proxy配置项可以替换为url:如果没有指定 proxy,此url将会被用来隐含配置一个 HttpProxy

2.simpleStore的用法和Store相同

3.JsonStore的用法

 

由于Store内部定义为Json格式因此reader配置项不在需要

var queryStore = new Ext.data.JsonStore({

        url : 'runNew/getOperateTicketList.action',

        root : 'list',

        totalProperty : 'totalCount',

        fields : rungridlist //构造器,和上面的MyRecord相同

    });

后台返回的数据是以Json格式返回的:pg是一个对象包含listtotalCount

 

 

本地数据

store : new Ext.data.SimpleStore({

           fields : ['value', 'text'],

           data : [['','全部'],['0','未上报'],['1','采购员已申请']]

       }),

Store中插入一条数据

var storeSubShow = new Ext.data.JsonStore({

        fields : ['empId', 'chsName', 'stationId', 'stationName', 'ssDeptId', 'ssDeptName', 'jdDeptId', 'jdDeptName']

    })

    storeSubShow.insert(0, new Ext.data.Record({

        'empId' : '',

        'chsName' : '',

        'stationId' : '',

        'stationName' : '',

        'ssDeptId' : '',

        'ssDeptName' : '',

        'jdDeptId' : '',

        'jdDeptName' : ''

    }));

你可能感兴趣的:(store)