【发布时间】:2020-03-13 10:34:08
【问题描述】:
我有以下情况。 Javascript 在前端执行并对事件做出反应。如果捕获到事件,则会调用特定的后端方法。
我像下面这样初始化后端。在我的 Vaadin 14 视图之一初始化期间调用该方法。
window.init = function(element) {
window.element = element;
...
}
查看:
public class TestView extends Div {
public TestView() {
...
UI.getCurrent().getPage().executeJs("init($0)", this);
}
}
稍后在前端使用window.element.$server.onTestEvent(); 调用方法。
被调用的后端方法:
@ClientCallable
private void onTestEvent() {
System.out.println("Test");
}
现在的问题:
我将视图传递为element。
如果我更改视图,我传递的element 将被销毁,因此即使在前端捕获事件(在后端)也无法执行。
Vaadin 14 是否提供了一种在所有视图中“全局”存储对象的方法?我希望应用程序独立于我当前访问的视图对事件做出反应。
【问题讨论】:
标签: javascript java vaadin vaadin14