关于Ext3.2的自动刷新功能

来源:互联网 发布:大闸蟹品牌 知乎 编辑:程序博客网 时间:2024/06/05 05:26

这两天需要一个自动刷新的功能,就是系统登陆进来之后有一个设备的最新信息,需要每隔一段时间刷新一次。

查询api发现有Ext.util.TaskRunner()一个东西可以实现功能,所以跟大家分享一下


它是一个定时的任务器,需要给一个时间的参数以及要执行的代码,下面我将我的代码贴出来看下,红色部分为关键代码

Ext.ns("widget.leadtemp");


widget.leadtemp.LatestDataTabPanel = Ext.extend(Ext.TabPanel ,{
leadTempChartLoaded:false,
border : false,
activeTab : 0,
anchor:'100%',
//region:'center',
enableTabScroll : false,
tabPosition : 'bottom',
runner : new Ext.util.TaskRunner(),
initComponent : function() {
   if(viewport.loadJsFile('directjngine/com.tuobiao.webapp.action.history.js')){
    Ext.Direct.addProvider(com.tuobiao.webapp.action.history.REMOTING_API);
   }
   viewport.loadJsFile('extjs/3.2/ux/Ext.ux.grid.GridPanel.js');
viewport.loadJsFile('history/query/PictureDataPanel.js');
this.envChartPanel = new hist.query.PictureDataPanel({
title:'设备图像简报',
border:false,
frame:false
});

this.items=[this.envChartPanel];

widget.leadtemp.LatestDataTabPanel.superclass.initComponent.call(this);
this.on('afterrender',this.createButton);
},
createButton:function(){
var panel = this.ownerCt;
panel.doLayout();
this.refresh(10*1000);

},


refresh:function(time){
var p = this.envChartPanel;
var l = this.leadTempChartPanel;
this.runner.stopAll();
var task = {
run : function() {
        p.getStore().reload();
},
interval : time
};
this.runner.start(task);

}
}); 

0 0
原创粉丝点击