PollingProvider方法的使用及示例
来自《sencha touch权威指南》第12章,374页开始
-----------------------------------------------------
PollingProvider 主要用于客户端每隔一段时间向服务器发出一次轮询请求,服务器端在接收到请求后向客户端返回数据。
在使用 PollingProvider 的时候,可以先创建 Ext.direct.PollingProvider 类的对象,然后使用 Ext.direct.Manager 类的addProvider 方法添加该 Provider。
-----示例--------
app.js代码
Ext.require(['Ext.direct.Manager','Ext.direct.PollingProvider']); Ext.application({ name: 'MyApp', icon: 'images/icon.png', glossOnIcon: false, phoneStartupScreen: 'images/phone_startup.png', tabletStartupScreen: 'images/tablet_startup.png', launch: function(){ var panel = Ext.create('Ext.Panel',{ id: 'myPanel', tpl: '<p>{data}</p>', tplWriteMode: 'append', }); Ext.direct.Manager.addProvider({ type: 'polling', url: 'poll.php', listeners: { data: function(provider, event){ panel.setData({ data: event.getData() }); } } }); Ext.Viewport.add(panel); } });
poll.php代码:
<?php echo json_encode(array( 'type' => 'event', 'name' => 'message', 'data' => '轮询成功,时间:'. date('Y/m/d H:i:s') )); ?>
结果显示: