带有Errai-UI的标签

时间:2013-02-27 12:42:14

标签: java gwt errai

我试图找出如何做的事情"标签"与Errai-UI。

例如,如果所选标签为#home,则会显示Home模板,或者#about显示AboutUs模板。

我有这个入门级课程:

@Templated("#home")
@EntryPoint
public class App extends Composite {
       @PostConstruct
       public void setup()
       {
           RootPanel.get().clear();
           RootPanel.get("rootPanel").add(this);
       }
}

关于我们的模板

@Templated("#about") 
public class AboutUs extends Composite {  
       @PostConstruct
       public void setup() { 
           RootPanel.get("rootPanel").clear();
           RootPanel.get("rootPanel").add(this);
       }
}

1 个答案:

答案 0 :(得分:1)

要打开导航,您应该在入口点初始化导航组件。每个页面都应该有注释@Page(path = "pageName")。 只有通过添加#pageName或使用特殊组件(见下文)的URL,才能在标签之间切换。

查看示例:

继承导航模块

<inherits name="org.jboss.errai.ui.nav.Navigation"/>

实施入口点

@EntryPoint
public class Bootstrap
{

    @Inject
    Navigation navigation;


    @PostConstruct
    public void buildUI()
    {
        navigation.getContentPanel().setWidth("100%");
        navigation.getContentPanel().setHeight("100%");
        RootPanel.get().add(navigation.getContentPanel());
    }

}

实施网页

@Templated
@Page(path = "myPage", startingPage = true)
public class MyPage extends Composite
{
   ...
}

要在另一个组件中添加“链接”,您可以使用以下注入:

 @Inject
 private TransitionTo<MyPage> myPageTransition;

 ...
 myPageTransition.go(); // load MyPage
 ...