Java Vaadin 7 url导航hashbang

Java Vaadin 7 url导航hashbang,java,url,navigation,vaadin,vaadin7,Java,Url,Navigation,Vaadin,Vaadin7,我试图完全理解瓦丁7中的导航。我读了瓦丁的书,但仍然有一些实际问题 基本上它是关于使用爆炸(!)。我什么时候需要设置,为什么 有一个视图(myview) 有一个参数(param=X) 该参数用于标识显示的标签 浏览器历史记录示例: 我需要设置“砰”(!)或在浏览器中单击“上一步”不起作用,因为未将参数传递给“视图输入”功能: private void showInfo(String info) { infoLabel.setValue(info); Page.getCurre

我试图完全理解瓦丁7中的导航。我读了瓦丁的书,但仍然有一些实际问题

基本上它是关于使用爆炸(!)。我什么时候需要设置,为什么

  • 有一个视图(myview)
  • 有一个参数(param=X)
  • 该参数用于标识显示的标签
浏览器历史记录示例:
我需要设置“砰”(!)或在浏览器中单击“上一步”不起作用,因为未将参数传递给“视图输入”功能:

private void showInfo(String info) {
    infoLabel.setValue(info);
    Page.getCurrent().setUriFragment("!" + "myview/param=" + info, false);
}
单击按钮后的导航示例:
我不能设置bang(!),否则url片段将更改为“#!myview//param=X”(包含双精度/)

我在这里混合了两个概念,还是有一个实用程序为我这样做,而我不知道?还是我只需要知道这两个案例,然后自己决定爆炸


谢谢

您不需要设置“!”除了你想强制你的网站被搜索引擎抓取(请参阅)。有些人甚至说,这些炸土豆条很好吃


或者您的应用程序要求其全部内容由搜索引擎索引吗?

我根本不关心由搜索引擎索引,但正如我所写的,如果未设置浏览器的“后退(历史)”功能,则该功能在vaadin中不起作用。来自vaadin的
导航器
会忽略这些参数。
@Override
public void buttonClick(ClickEvent event) {
    getUI().getNavigator().navigateTo("myview/param=X")
}