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

发布于 2024-12-09 03:10:54 字数 202 浏览 0 评论 0原文

得到这个应用程序,如果您第一次打开它,它会检查数据库中的值,如果该值存在,一切都很好

如果该值不存在,我想重定向到另一个页面,用户可以在其中输入此值。

我该怎么做?

PS:我可以使用 URL 中的 @NameTolen 值访问其他页面。只是不知道如何进行自动“切换”以及在 Presenter 层的哪个部分对其进行编码(如果它甚至在那里)。

Got this app, if you open it the first time it will check for a value in a DB, if the value is there all is good

If the value is NOT there, I would like to redirect to another page where the user can input this.

How can I do this?

PS: I can access to the other page using the @NameTolen value in the URL. Just don't know how to make an automatic "switch" and in which part of the Presenter layer to code it (if it even goes there).

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

一向肩并 2024-12-16 03:10:54

在演示器中,您可以检查 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);
  }
}

请参阅揭示演示者:http:// code.google.com/p/gwt-platform/wiki/GettingStarted#Revealing_a_presenter

In your presenter you can check the value in onReveal() or onReset() methods. See presenter life cycle: http://code.google.com/p/gwt-platform/wiki/GettingStarted#Presenter_lifecycle

You also need to inject the PlaceManager in the presenter using the constructor. And then you can redirect like that:

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

See Revealing a Presenter: http://code.google.com/p/gwt-platform/wiki/GettingStarted#Revealing_a_presenter

妞丶爷亲个 2024-12-16 03:10:54

您甚至可以在透露演示者之前完成此操作。
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 /入门#Using_manual_reveal

You could do it even before revealing the presenter.
In prepareFromRequest, you can call the dispatcher and in the callback decide where to "redirect".

  @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
          }
        } ) );
  }

Also see here for more ideas:
http://code.google.com/p/gwt-platform/wiki/GettingStarted#Using_manual_reveal

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文