我正在使用EXTJs4,我想在数据库中插入记录后重新加载网格。目前我使用Task runner每1分钟重新加载一次商店。 以下是样本:
var store = grid.getStore();
var refreshTask = {
run: function() {
store.reload();
},
interval: 60 * 1000
};
Ext.util.TaskRunner.start(refreshTask);
我不确定如何在数据库中插入数据时如何编写函数来重新加载?
答案 0 :(得分:0)
一旦发生变化,有多种方法可以从服务器获得即时响应,最兼容的是所谓的"挂起请求"。
您所做的是向服务器发送请求,服务器不会立即回答。服务器反而等待直到有更改(它允许请求"挂起"因此名称),并且仅在此之后或在预定义的超时之后发送回复。 (显然,您的服务器端代码必须支持此行为。)
使用store.load
或客户端的其他商店功能无法实现此功能;您必须使用Ext.Ajax.request
并手动评估回复,例如从请求回调中调用store.loadRawData
以将更改的记录加载到商店中。