GWTP:在给定条件下重定向到另一个页面



得到这个应用程序,如果你第一次打开它,它会检查DB中的值,如果值在那里,一切都是好的

如果值不在那里,我想重定向到另一个页面,用户可以输入这个

我该怎么做?

PS:我可以使用URL中的@NameTolen值访问另一个页面。只是不知道如何自动"切换",以及在演示器层的哪个部分编码它(如果它甚至存在的话)。

在演示文稿中,您可以检查onReveal()onReset()方法中的值。参见演示者生命周期:http://code.google.com/p/gwt-platform/wiki/GettingStarted#Presenter_lifecycle

您还需要使用构造函数在演示器中注入PlaceManager。然后你可以这样重定向:

public void onReveal() {
  if(checkValue()) {
    PlaceRequest myRequest = new PlaceRequest(NameTokens.yourPage);
    placeManager.revealPlace(myRequest);
  }
}

参见show a Presenter: http://code.google.com/p/gwt-platform/wiki/GettingStarted#Revealing_a_presenter

您甚至可以在显示演示者之前这样做。在prepareFromRequest中,您可以调用调度程序,并在回调中决定"重定向"到哪里。

  @Override
  public void prepareFromRequest(PlaceRequest request) {
    super.prepareFromRequest(request);
    dispatcher.execute( new GetData(), 
        new AsyncCallback<GetDataResult>(){
          @Override
          public void onSuccess(GetDataResult result) {
            // depending on result reveal another place
            placeManager.revealPlace( ... )
          }
          @Override
          public void onFailure(Throwable caught) {
            // Display an error message
          }
        } ) );
  }

也可以在这里获得更多的想法:http://code.google.com/p/gwt-platform/wiki/GettingStarted Using_manual_reveal

相关内容

  • 没有找到相关文章

最新更新