该任务的目标是从后端更新每一行内容。这意味着对PHP的ajax请求。
表最初加载了basevalues,需要定期加载到每一行的新的更新数据。
创建一个每分钟运行一次的ExtJs任务,store.each
将遍历所有记录,获取参数id和ajax成功,记录将被更新并提交。
然而,这种方法带有一个缺陷 - 如果有多行,发送50或100个即时请求将最终导致大多数时间。
同时获取所有数据并刷新整个网格不是一个选项 - 计算每个行的所有数据将超过请求时间限制(~30s),因此需要单独请求每个 - 但不是同时。
有没有什么好方法可以在分机中实现这一目标?
更新:
我设法使用setTimeout作为store.each循环中ajax查询的延迟。每5次迭代,延迟将增加 - 因此,当Ext任务完成并且所有结果循环结束时,它们每5秒以5个批次执行 - 并且在任务再次运行时再次启动。
答案 0 :(得分:0)
最好将请求发送到服务器,只获取项目的变更集,并用更改的项目替换旧项目。
如果您不想重新加载整个商店,唯一的变体是逐个发送请求,或者将它们打包在包中并逐包刷新它们。