我正在尝试在Vaadin视图中的组件列表上实现自动刷新。该列表从数据库获取其内容。我可以使用已实现的按钮刷新列表。
但是,我想知道最简单的方法是什么,以便我已经拥有的此刷新事件将以5分钟(300 000毫秒)的间隔自动刷新?
这是我尝试过的方法,即使退出视图后它仍然保持刷新,因此它实际上并没有起作用。 我希望仅在显示该特定视图时每隔5分钟进行一次刷新。
UI myUI = UI.getCurrent(); myUI.setPollInterval(300000); myUI.addPollListener(event -> { refreshList(); });
我将如何定位以便导航到其他视图后不会刷新?在Vaadin中,有没有更简单的方法可以做到这一点?谢谢
你可以这样打电话
myUI.setPollInterval(300000);
当视图被激活时,您可以通过调用将其禁用
myUI.setPollInterval(-1);
当另一个视图被激活时。如果使用Vaadin Navigator,则可以ViewChangeListener用于处理轮询。
ViewChangeListener