Domanda

Sono un principiante sencha Touch, in fondo io sono uno sviluppatore BlackBerry. Attualmente stiamo migrando la nostra applicazione per supportare Sencha touch 1.1. Ora ho alcune soluzioni di business come voglio per memorizzare i valori selezionati nel database locale. Senso che ho più schermi in cui, una volta che l'utente seleziona un valore in ciascuna schermata dei dati dovrebbe salvare nel sotto seguente formato.

[{ 'chiave1': "valore2", 'key3':: "value3", 'KEY4': "valore4", 'key5':, 'key2' "valore1" "valore5"}]

1. In primo luogo, i valori devono essere salvati in coppie valore chiave

2. Le chiavi devono svolgere il ruolo di chiave primaria, chiave non dovrebbe essere duplicato.

3. Dovrebbe essere disponibile fino al ciclo di vita delle applicazioni o sessione di applicazione, non è necessario salvare i dati in modo permanente.

Ho incontrato i concetti come LocalStorageProxy, JsonStore e alcuni altri. Non capisco quale posso usare per le mie esigenze specifiche.

Può essere la mia domanda è po 'più confusa. Ho raggiunto lo stesso utilizzando vettore, in BlackBerry Java in modo che qualsiasi struttura dati simile a questo mi potrebbe aiutare. Hai bisogno di operazioni di base come

  1. Crea
  2. Aggiungi
  3. Rimuovi
  4. Rimuovi tutto
  5. Fetch elementi in base tasto

Si prega di suggerire me alcuni campioni o alcune istantanee di codice, che mi può aiutare a raggiungere questo obiettivo.

Modifica: 1

ho fatto i cambiamenti come da @ risposta Ilya139 s'. Ora sono in grado di aggiungere i dati con chiave,

// this is my Object declared in App.js
NSDictionary: {},

// adding the data to object with key
MyApp.NSDictionary['PROD'] = 'SONY JUKE BOX';

//trying to retrieve the elements from vector 
var prod = MyApp.NSDictionary['PROD'];

Dado non è in grado di recuperare gli elementi usando la sintassi di cui sopra.

È stato utile?

Soluzione

Se non è necessario salvare i dati in modo permanente allora si può solo avere un oggetto globale con le proprietà desiderate. In primo luogo definire l'oggetto come questo:

 new Ext.Application({
    name: 'MyApp',
    vectorYouNeed: {},
   launch: function () { ...

Poi aggiungere le coppie di valori-chiave per l'oggetto come questo

 MyApp.vectorYouNeed[key] = value;

E li prendere come questo

 value = MyApp.vectorYouNeed[key];

Si noti che chiave è un oggetto stringa cioè var key='key1'; e valore può essere qualsiasi tipo di oggetto.

Per rimuovere una MyApp.vectorYouNeed[key] = null; valore e per rimuovere tutti loro MyApp.vectorYouNeed = {};

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top