Sencha Touch - Store
È fondamentalmente la raccolta di istanze del modello. Anche i negozi possono essere statici e dinamici. In un archivio statico, carichiamo i dati in linea. Nell'archivio dinamico, recuperiamo i dati dal server utilizzando proxy ajax.
La classe di base del negozio è Ext.data.Store
Archivio statico
Ext.create('Ext.data.Store', {
model: 'User', data: [
{ firstName: 'Greg', lastName: 'Barry' },
{ firstName: 'Seth', lastName: 'Lemmons' },
{ firstName: 'Mitch', lastName: 'Simoens' },
{ firstName: 'Fred', lastName: 'Mosby' }
]
});
In negozio, possiamo eseguire l'ordinamento, il filtraggio e il raggruppamento dei dati del negozio in locale e in remoto.
Per eseguire l'ordinamento localmente, definiamo lo smistatore e il campo, in base al quale dobbiamo ordinare i dati.
Filtra in coppia valore chiave come proprietà sia il nome del campo e il valore sia il valore da filtrare.
Il raggruppamento può essere eseguito con groupField in cui forniamo un nome di campo in base al quale deve essere eseguito il raggruppamento.
groupDir serve a specificare la direzione: ascendente o discendente.
Ext.create('Ext.data.Store', {
model: 'User', sorters: ['name', 'id'], filters: {
property: 'name', value : 'Ed'
},
groupField: 'age', groupDir: 'DESC'
});