我正在尝试创建一个基于vaadin和spring的web应用程序,它由几个不同的视图组成。我的问题基本上是这些不同的视图或类之间的通信。
在初始视图中,用户将创建“player”对象,这些对象随后在会话的不同视图中使用。目前我有四个类(这里省略了player-class):
@Route("")
public class InitOptionsView extends VerticalLayout {
public InitOptionsView(@Autowired PlayerController playerController) {
// other stuff...
for(Player p : players) {
playerController.addHomePlayer(p);
}
UI.getCurrent().navigate("shot");
}
}
@Component
@VaadinSessionScope
public class PlayerController {
private final ArrayList<Player> playersHome = new ArrayList<>();
public void addHomePlayer(Player p) {
playersHome.add(p);
}
public ArrayList<Player> getHomePlayers() {
return playersHome;
}
}
@Route(value = "shot", layout = MainView.class)
@PageTitle("Laukaus")
@CssImport("./styles/views/laukaus/laukaus-view.css")
public class ShotView extends VerticalLayout {
public ShotView(@Autowired PlayerController playerController) {
for(Player p : playerController.getHomePlayers()) {
System.out.println(p.toString());
}
}
}
列表“playercontroller.getHomePlayer()”为空。
我试图使用这个链接后面的vaadin文档:https://vaadin.com/docs/v14/flow/spring/tutorial-spring-scopes.html
我对spring、注解等非常陌生,我相信解决方法在于注解和注入,但在彻底的google搜索之后,我仍然处于起点。任何帮助都将不胜感激!
暂无答案!
目前还没有任何答案,快来回答吧!