Опит за предаване на стойности към локално хранилище чрез Sencha Touch 2.1.1

Може ли някой да ми каже защо тази част от кода не създава запис в localstorage?

    myLocalStore.load();

    var now = new Date();
    var cardId = (now.getTime()).toString() + (this.getRandomInt(0, 100)).toString();

    var entry1 = { id: cardId, dateCreated: now, title: 'The Title', narrative: 'the Text' };
    var newRecord = new PinYin.model.Default(entry1);
    myLocalStore.add(newRecord);

    myLocalStore.sync();

    console.log(entry1);

Изходите на конзолата

Object{id: "136575772251069", dateCreated: Fri Apr 12 2013 17:08:42 GMT+0800 (Taipei Standard Time), title: "The Title", narrative: "the Text"}

кой е правилният формат, така че не съм сигурен какво правя погрешно...

ако заменя myLocalStore.add(entry1); с myLocalStore.add('стойност');

тогава ще получа следното, въведено в локалното хранилище

{"id":"ext-record-1","dateCreated":null,"title":null,"narrative":null}


person mwhluu    schedule 12.04.2013    source източник


Отговори (2)


Изправих се пред същата ситуация и намерих решението така,

Първо, ако зададете полето "idProperty" на модела, премахнете го.

След това използвайте следната конвенция.

myOfflineStore.add([{ listItemId: record.data.listItemId, 
                      listItemTitle: record.data.listItemTitle, 
                      listItemImageCode: record.data.listItemImageCode,     
                      listItemNewPostCount: record.data.listItemNewPostCount }]);

Използването на [, ] е ключовият момент.

РЕДАКТИРАНЕ: Ако искате да използвате idProperty, тогава трябва да зададете новодобавения запис като "фантом" с настройка phantom = true

person handet87    schedule 16.04.2013

Пробвай така...

      var airline_name = res[i].AirLineName; 
localStorage.setItem("AirlineCode3two",record.get('AirlineCode32'));

        var stored_locally2 = {'ID2': i,'AirLineName2': res[i].AirLineName,};

             //Adding our array to LocalStore(localStorage)
                         var localstore2 = Ext.getStore('TwowayStorage');

                         var twowayc1=localstore2.getCount();
                         localstore2.add(stored_locally2);
                         localstore2.sync();
                         localstore2.load();
person Gayathri Mohan    schedule 20.04.2013