Básicamente es la colección de instancias modelo. Las tiendas también pueden ser estáticas y dinámicas. En una tienda estática, cargamos datos en línea. En la tienda dinámica, obtenemos datos del servidor utilizando proxies ajax.
La clase base de la tienda es Ext.data.Store
Tienda estática
Ext.create('Ext.data.Store', {
model: 'User', data: [
{ firstName: 'Greg', lastName: 'Barry' },
{ firstName: 'Seth', lastName: 'Lemmons' },
{ firstName: 'Mitch', lastName: 'Simoens' },
{ firstName: 'Fred', lastName: 'Mosby' }
]
});
En la tienda, podemos clasificar, filtrar y agrupar los datos de la tienda tanto de forma local como remota.
Para realizar la clasificación localmente, definimos el clasificador y el campo, en función del cual necesitamos clasificar los datos.
Filtrar en par clave-valor como propiedad sea su nombre de campo y valor sea su valor a filtrar.
La agrupación se puede realizar con groupField en el que proporcionamos un nombre de campo en función del cual se debe realizar la agrupación.
groupDir es para especificar la dirección - ascendente o descendente.
Ext.create('Ext.data.Store', {
model: 'User', sorters: ['name', 'id'], filters: {
property: 'name', value : 'Ed'
},
groupField: 'age', groupDir: 'DESC'
});