2012-05-16 71 views
1

我試圖將我的配置頁保存在本地存儲中,稍後再回收。我不太確定如何做到這一點。當我嘗試使用「store.load」加載商店,但它說加載未定義。本地存儲實施

我的配置頁面的代碼是

var flag = 1; 
var count = 3; 
var apptitle; 
Ext.define("InfoImage.view.Settings",{ 
        extend : 'Ext.form.Panel', 
        requires : [ 
        //'InfoImage.view.workItemPanel', 
        'Ext.TitleBar', 'Ext.field.Text', 'Ext.field.Toggle', 
          'Ext.field.Select', 'Ext.layout.HBox', 
          'Ext.field.Number', 'Ext.field.Checkbox', 
          'Ext.form.FieldSet', 'Ext.field.Password', 
          'Ext.field.Url' ], 
        xtype : 'settingsPanel', 
        id : 'settings', 
        config : { 
         //store:'configStore', 
         scrollable : { 
          direction : 'vertical' 
         }, 
         items : [ 
           { 
            xtype : 'toolbar', 
            ui : 'dark', 
            docked : 'top', 
            id:'myTitle', 
            title : 'InfoImage Settings', 
            items : [ 
            { 
             xtype : 'button', 
             iconCls : 'home', 
             iconMask : true, 
             ui : 'normal', 
             id : 'homeSettingbtn' 
            }, 

            {xtype: 'spacer'}, 
            { 
             xtype : 'button', 
             //text:'Save', 
             iconCls : 'save_fin', 
             iconMask : true, 
             ui : 'normal', 
             id : 'savebtn', 
             handler : function() { 
             } 
            }, 
            { 
             xtype : 'button', 
             //text:'Default', 
             iconCls : 'default', 
             iconMask : true, 
             ui : 'normal', 
             handler : function() { 
              var form = Ext.getCmp('settings'); 
              form.reset(); 
             } 

            } 

            ] 
           }, 

           { 
            //fieldset defined for the Server Configuration details to be entered. 
            xtype : 'fieldset', 
            title : 'Server Configuration', 
            defaults : { 
             xtype : 'selectfield', 
             labelWidth : '30%', 
            }, 
            items : [ 
              { 
               xtype : 'urlfield', 
               name : 'servname', 
               id : 'servname', 
               label : 'Server Name', 
               labelWidth : '30%' 
              }, 
              { 
               xtype : 'numberfield', 
               id : 'port', 
               name : 'port', 
               label : 'Port', 
               value : '80', 
               labelWidth : '30%' 
              }, 
              { 
               xtype : 'selectfield', 
               name : 'protocol', 
               id : 'protocol', 
               label : 'Protocol', 
               labelWidth : '30%', 
               usePicker : false, 
               //ui:'action', 
               //styleHtmlContent:true, 
               //visible:true, 
               //fieldStyle:'background-color:#FFF;', 
               handler : function() { 
               }, 
               options : [ { 
                text : 'HTTP', 
                value : 'HTTP' 
               }, { 
                text : 'HTTPS', 
                value : 'HTTPS' 
               } 

               ] 
              } 

            ] 
           }, 
           { 
            //fieldset defined for the User Configuration details to be entered. 
            xtype : 'fieldset', 
            title : 'User Configuration', 
            items : [ { 
             xtype : 'textfield', 
             name : 'username', 
             id : 'username', 
             label : 'User Name', 
             labelWidth : '30%' 
            }, { 
             xtype : 'passwordfield', 
             name : 'password', 
             id : 'password', 
             label : 'Password', 
             labelWidth : '30%' 
            }, { 
             xtype : 'textfield', 
             id : 'domain', 
             name : 'domain', 
             label : 'Domain', 
             labelWidth : '30%' 
            } ] 
           }, 



           { 
            //fieldset defined for the App Subtitle to be entered. 
            xtype : 'fieldset', 
            items : [ { 
             xtype : 'textfield', 
             name : 'apptitle', 
             id : 'apptitle', 
             label : 'App Subtitle', 
             labelWidth : '30%', 
             value : 'Mobile Client Work Manager' 
            } ] 
           } 

         ] 

        } 
       }); 

和我controller.js代碼

Ext.getCmp('settings').getStore().load(); 

那我該怎麼辦店在本地存儲這些數據,並retrive呢?

回答

0

我認爲這個問題是在這裏:

//store:'configStore', 

也許你應該註釋去掉它。

對於從localStorage的讀取數據:

Ext.getCmp('settings').getStore().load(); 

用於將數據寫入到localStorage的:

Ext.getCmp('settings').getStore().add(data); 
Ext.getCmp('settings').getStore().sync(); 

同步()方法使用同步煎茶存儲與HTML5的localStorage(如果我這樣做是正確 - 它適合我)