我正在尝试为网格提供自动刷新功能,该功能基本上每“n”秒使用来自服务器的最新数据更新网格。
每当用户启用自动刷新时,我都能够实现 PollListner。
UI ui= TestUI.getCurrent();
Boolean value = isRefreshChkBox.getValue();
PollListener listener = e -> {
explorer.reloadUI();
};
if (value) {
String refreshRateValue = refreshRateTxtField.getValue();
int refreshRate = Integer.valueOf(refreshRateValue);
int millis = (int) TimeUnit.SECONDS.toMillis(refreshRate);
absUI.setPollInterval(millis);
absUI.addPollListener(listener);
} else {
absUI.setPollInterval(-1);
absUI.removePollListener(listener);
}
使用上面的代码,每次启用自动刷新时我都会添加 PollListener 并在禁用时将其删除。
我在这里发现了类似的问题VAADIN 7:以 5 分钟为间隔刷新 Vaadin 视图的最简单方法是什么?
但是我想了解的是,是否有更好的方法来实现简单的用例 AutoRefresh UI?PollListener 应该在哪里实现?我想为视图创建一次 PollListener 并在每次用户更改刷新率时更新 PollInterval 。
关于哪种方法更好的任何指示,或者 Vaadin 中是否有全新的概念来实现这一目标?
相关分类