私は煎茶タッチとのlocalStorageでいくつかの問題を抱えている...煎茶タッチ - のlocalStorage問題
1)私はのlocalStorageにデータを保存することができるよ、と私はページを更新するまで、それは素晴らしい作品。その後も、データにアクセスしたり、変更を加えたり、新しいエントリを追加することができます。しかし、ページがリフレッシュされるとすぐに、私の更新はすべて消えてしまいます。新しく追加されたものはすべて問題ありませんが、元のエントリへの更新は保存されません。基本的に、私はエントリを作成し、私がページをリフレッシュするまで、それをすべて更新することができます。その時点で、再度localstorageに保存されません。新しいエントリーはいつでもうまく保存されます。
2)エントリをすべて削除してからページを更新すると、コンソールで次のエラーが表示されます。「キャッチされていないTypeError:nullのプロパティ 'id'を読み取れません。何もないのに何かをロードしようとしているようです。私はこの状況でエラーが発生する理由は分かりませんし、ページが最初にロードされたときと同じものなので、正しく読み込まれませんか?
モデル:
Ext.regModel('inventoryItem', {
idProperty: 'id',
fields: [
{ name: 'id', type: 'int' },
{ name: 'date', type: 'date', dateFormat: 'c' },
{ name: 'title', type: 'string' },
{ name: 'quantity', type: 'int' },
{ name: 'size', type: 'int' },
{ name: 'cost', type: 'double' },
{ name: 'startDate', type: 'date' },
{ name: 'endDate', type: 'date' },
{ name: 'dailyAvgCost', type: 'string' },
{ name: 'dailyAvgSize', type: 'string' }
]
});
ストア:
Ext.regStore('inventoryItemsStore', {
model: 'inventoryItem',
sorters: [{
property: 'id',
direction: 'DESC'
}],
proxy: {
type: 'localstorage',
id: 'inventory-app-store'
},
getGroupString: function (record) {
return '';
}
});
ハンドラ:
{
var currentinventoryItem = CostsApp.views.inventoryEditor.getRecord();
CostsApp.views.inventoryEditor.updateRecord(currentinventoryItem);
var inventoryStore = CostsApp.views.inventoryList.getStore();
if (null == inventoryStore.findRecord('id', currentinventoryItem.data.id))
{
inventoryStore.add(currentinventoryItem);
}
inventoryStore.sync();
inventoryStore.sort([{ property: 'date', direction: 'DESC'}]);
CostsApp.views.inventoryList.refresh();
}
誰もがsomethを指摘することができます私が間違っていることは明らかです。
何がCostsApp.views.inventoryEditor.updateRecord(currentinventoryItem)ですか?行う?あなたのモデルが何らかの理由で編集されたことを知らないように聞こえます。 –