0
我是Sencha Touch/Architect的全新品牌,並試圖創建我的第一家商店。我有以下項目設置:Sencha建築師localstorage無法正常工作
商店
Ext.define('InkStudio.store.MyStore', {
extend: 'Ext.data.Store',
requires: [
'InkStudio.model.activityLog'
],
config: {
data: {
entryID: 1,
name: 'First',
event: 'First event'
},
model: 'InkStudio.model.activityLog',
storeId: 'MyStore',
proxy: {
type: 'localstorage',
uniqueID: 'entryID'
}
}
});
型號
Ext.define('InkStudio.model.activityLog', {
extend: 'Ext.data.Model',
config: {
identifier: 'uuid',
fields: [
{
name: 'entryID',
type: 'auto'
},
{
name: 'name',
type: 'string'
},
{
name: 'event',
type: 'string'
}
]
}
});
然後我有一個測試下面的按鈕。該按鈕正在工作,我收到了「成功」消息,但是當我看着它或爲它捕獲文件時,數據從未實際顯示在商店中。
var store=Ext.getStore('MyStore');
if(store.add({name: "KITTY", event: "Clicked on the register"})){
console.log("Successfully added");
}else{
console.log("Failed to add");
}
if(store.sync()){
console.log("Successfully synced");
}else
{
console.log("Failed to sync");
}
我是否缺少別的東西?
塞爾吉奧,謝謝大家的響應。根據我發現的教程,我將數據作爲預先存在的數據測試。我已經刪除了數據並再次嘗試了一切,但仍然沒有顯示出來。基本上來測試它,我已經有了一切設置,然後我推動按鈕來觸發代碼,然後看看我的文件「KITTY」出現在商店,但它沒有。 –
您還需要將代理從'uniqueID'更改爲'id'。此屬性名稱不存在,如果沒有id,您的本地存儲將無法工作。 –
好吧,我刪除了uniqueID:'entryID'並將其更改爲id:'id'並且沒有任何更改,我也嘗試過id:'entryID',並且它沒有任何影響:( –