次のUIを取得しようとしています。gwt mvp(アクティビティと場所)の使用を検討しています。ドキュメントで提供されている簡単な例に従っています。これまでのところ、GWT MVP (アクティビティと場所) を使用して基本的なタブ パネルを実現しました。URL は、現在のタブ パネルによって異なります。ヘッダー (ログイン情報) とフッターを取得するにはどうすればよいですか? また、ユーザーがログインしている場合にのみ 2 番目のタブを使用できるようにしたいと考えています。そのようなユーザー インターフェイスには GWTP の方が適していますか?
3 に答える
私の意見では、ヘッダーとフッターに別の領域を作成する必要があります。
タブパネルをレンダリングするときは、ユーザーがログに記録されているかどうかを確認していると思います。その場合、イベントバスで2つの地域間の会話を確立することができます。
また、最初に起動されたときに、リージョンのコンテンツ(ヘッダーのログインパネルと他のリージョンのタブパネル)を実装する対応するアクティビティで、1つの「ホーム」場所を作成する必要があります。
ここに来る人がいたら、 http://blog.ltgt.net/gwt-21-activities-nesting-yagni/を調べることをお勧めします。
GWTP
必要なものがすべて揃っています。さまざまなリージョンで UI にネストされたプレゼンターを使用します。アプリの一部へのアクセスを制限するには、Gatekeeperを使用します。
フッターは、静的コンテンツとして HTML ホスト ページに簡単に追加できます。ログイン情報ウィジェットの場合、ホスト ページで適切に配置された DIV 要素を取得し、後で必要なコンテンツを追加できます。
RootPanel.get("yourDivIdentifier").add(widgetsWithLoginInfo);
MVP は GWT アプリケーションの優れたパターンであり、ページで確実に機能します。2 番目のタブの追加は、Presenter で次のように管理できます。
//This is the callback method invoked after login
if (isUserLogged){
display.addSecondTab(...);
}
そして、Display クラスで、対応するウィジェットをビューに追加します。