2012-10-09 68 views
2

新數據自動更新我有這樣的ExtJS的數據存儲與ext.data.store

mystore= Ext.create('Ext.data.Store', { 
     id: 'store_id', 
     fields: ['label', 'value', 'id', 'type'], 
     autoLoad: true, 
     proxy: { 
      type: 'ajax', 
      url: 'url/to/controller', 
      reader: { 
       type: 'json', 
       root: 'MyModel' 
      } 
     } 
    }); 

是否有可能與ExtJS的配置,使這家店發送新數據的Ajax請求一些時間間隔(如5秒)自動?

我想使用所有的功能,ExtJS的能提供如此,我不使用PHP或額外的JavaScript。

+1

你也可以看看服務器端推送,比如WebSockets的或彗星 –

回答

6

可以使用TaskManager類來幫助與經常性的任務。

var task = { 
    run: function() { 
     mystore.load(); 
    }, 
    interval: 5000 
} 

// This will reload your store every 5 seconds 
Ext.TaskManager.start(task); 

// Call when you want to stop polling the server 
Ext.TaskManager.stop(task); 
1

裏面的我格代碼,我已經把以下的功能和它的工作:

setInterval(function() // IN YOUR CASE, IT RELOADS EACH 5 SECONDS 
{ 
    storeReload = Ext.getStore("YourStoreHere"); 
    storeReload.load(); 
} 
,5000); 

我希望有幫助!