Bas*_*que 1 hook user-interface lifecycle vaadin vaadin-flow
Vaadin 14手册中的导航生命周期说:
也可以使用中的
addBeforeEnterListener(BeforeEnterListener)方法为该事件注册一个独立的侦听器UI。
但是在具有路由功能的现代Vaadin中,我们不再应该编写UI子类。我的粗略理解是确实存在一个UI为我们自动实例化的对象,然后路由自动替换了该UI对象中的内容。因此,UI对于使用Vaadin Flow的程序员来说,对象的存在应该是透明的。
?那么,新UI实例上的生命周期挂钩是什么,这样我就可以编写一个用户身份验证检查以BeforeEnterListener在所有@Route视图中全局工作?
调用UI.getCurrent不会做,因为我需要从布局中的某个地方调用它,但是我试图在布局存在之前注册一个侦听器。
要挂接到UI init,有一个UIInitListener。
UIInitListener每当创建和初始化新的UI时,A 可用于接收事件。添加UIInitListeners的理想位置是在
VaadinServiceInitListener
例如,使用Springboot:
@Bean
VaadinServiceInitListener vaadinServiceInitListener() {
return new VaadinServiceInitListener() {
@Override
public void serviceInit(ServiceInitEvent serviceInitEvent) {
serviceInitEvent.getSource().addUIInitListener( initEvent -> System.out.println("UI Init for " + initEvent.getUI()));
}
};
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
63 次 |
| 最近记录: |