我正在使用 GWT 编写一个 Web 应用程序,并遵循 GWT 网站上的MVP 教程(即History
用于导航)。
我对使用侧边栏进行导航的最佳方式有点困惑(即单击导航链接会更改主窗口中的内容。见下文)
--------------------
| | |
| nav | main |
| | window |
| | |
| | |
--------------------
我看到的一种可能的方法是<div>
在 HTML 中声明两个标签用于导航和内容。例如:
@Override
public void onValueChange(ValueChangeEvent<String> event) {
...
if (token.equals("navigation")) {
presenter = new NavigationPresenter(rpcService, eventBus, new NavigationView());
presenter.go(RootPanel.get("navigation"));
}
...
if (token.equals("content")) {
presenter = new ContentPresenter(rpcService, eventBus, new ContentView());
presenter.go(RootPanel.get("content"));
}
...
}
我不确定这是否是解决此问题的最佳方法。(我猜导航面板和内容窗口之间的双向通信可以通过一个来完成EventBus
?这种方法在更改 UI 时是否灵活(例如移动网站))
我想知道人们会建议什么是解决这个问题的最佳方式。我已经阅读并经常讨论有关活动和地点的讨论,但据我了解,这些与 MVP 架构有些不同(活动和地点对于浏览器历史管理很有用,尽管我认为我的使用History
涵盖了(?))
任何建议,将不胜感激。