Обновить значение с помощью дублированных записей Sencha Touch / Ext JS localstorage - PullRequest
0 голосов
/ 26 ноября 2011

Я хочу обновить значение записи в моем локальном хранилище. На данный момент будет добавлена ​​новая запись с тем же идентификатором, дублированная. Например, если функция update выполнит строку, содержащую все идентификаторы (здесь «test-proxy»), то к ней снова будет добавлен тот же идентификатор.

model.Test = Ext.regModel('model.Test', {
    idProperty: 'id',
fields : [ {
    name : 'id',
    type : 'integer'
}, {
    name : 'name',
    type : 'string'
}
]});


//Store
store = new Ext.data.Store({
model : 'model.Test',
sorters : 'title',
storeId : 'test',
 proxy: {
    type: 'localstorage',
    id  : 'test-proxy',
    idProperty: 'id'
}
});

updateName = function(id) {
    store.read();
    var item = store.getAt(id-1).data;

    //toggle
    item.name = "Update"
    store.add(item);
    store.sync();
    console.log(store.getAt(id-1));
}

1 Ответ

2 голосов
/ 27 ноября 2011

ОК, я нашел решение этой проблемы. Проблема связана с обновлением DataView.

store.load();
listData.refresh(); // will refresh  Ext.DataView
...