我用 Vaadin 创建了一个导航菜单栏,我想知道如何将视图或链接附加到每个选项卡,以便单击它可以将我重定向到相应的视图。我已经设法找到解决方法,但我认为这种方法是有缺陷的:
Tabs tabs = new Tabs(new Tab("Login"), new Tab("Register"));
tabs.setOrientation(Tabs.Orientation.VERTICAL);
tabs.addSelectedChangeListener(event -> {
if (event.getSelectedTab().getLabel().equalsIgnoreCase("Login")) {
UI.getCurrent().navigate(LoginView.class);
} else if (event.getSelectedTab().getLabel().equalsIgnoreCase("Register")) {
UI.getCurrent().navigate(RegisterView.class);
}
});
Run Code Online (Sandbox Code Playgroud)
我在 Tab 组件上没有找到单独的 clickListener 事件,这对我来说很奇怪。还注意到我可以使用 tabName.getUI() 方法将 UI 附加到选项卡,但是我找不到附加它的方法。
帮助我找到使用选项卡导航的正确方法!提前致谢!
各位程序员朋友们好!我对 Vaadin 比较陌生,所以请原谅我。我正在尝试将我的服务层自动连接到我的视图中,如下所示:
@Route("")
@PWA(name = "First time bruh", shortName = "Project Base")
public class MainView extends VerticalLayout {
private TextField filterText = new TextField();
private Grid<Customer> grid = new Grid<>(Customer.class);
private CustomerForm customerForm = new CustomerForm(this);
@Autowired
private CustomerService customerService;
Run Code Online (Sandbox Code Playgroud)
并且 customerService 依赖项注入工作正常,但是当我尝试在组件中使用它时,它返回 null:
@Route
public class CustomerForm extends FormLayout {
@Autowired
private CustomerService customerService;
Run Code Online (Sandbox Code Playgroud)
我尝试用 @Component 和 @SpringComponent 注释类,但依赖注入不起作用,我认为问题不是来自类不是 bean 的事实,因为 MainView Class 也不是 bean。
我的愿望是我创建的自定义子组件可以访问服务层。
在此先感谢您的帮助!