Sencha Touch - Tienda

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'
});