春の Webflow 内で、前のビューのいずれかに「戻る」またはフローを再開できるナビゲーション バーを実装する必要があります。
例えば :
- 表示 1 = ログイン
- ビュー 2 = 私の情報
- ビュー 3 = 私のメッセージ
- ビュー 4 = セッションを閉じる
この例では、ビュー 4 のページからビュー 2 に戻りたいと思います。
春の Webflow 内で、前のビューのいずれかに「戻る」またはフローを再開できるナビゲーション バーを実装する必要があります。
例えば :
この例では、ビュー 4 のページからビュー 2 に戻りたいと思います。
これをどのように行うかによって異なります。単一のフロー内でこれを行う場合、次のようになります。
<view-state id="loginView" view="login.jsp">
<action-state bean="someBean" method="login" />
<transition on="success" to="informationView" />
</view-state>
<view-state id="informationView" view="information.jsp">
<render-actions>
<action-state bean="someBean" method="retrieveInformation" />
</render-actions>
<transition on="forward" to="messageView" />
<transition on="back" to="loginView" />
</view-state>
<view-state id="messageView" view="message.jsp">
<render-actions>
<action-state bean="someBean" method="retrieveMessage" />
</render-actions>
<transition on="forward" to="closeView" />
<transition on="back" to="informationView" />
</view-state>
<view-state id="closeView" view="logout.jsp">
<transition on="jumpBack" to="informationView" />
</view-state>
「closeView」の「jumpBack」トランジションは、情報ビューであるビュー ステート #2 に戻ります。
サブフローの場合は注意が必要です。それをチェーンする必要があります。サブフローを呼び出し、特定の状態でフローを終了する必要があることを示すイベントが通知された場合は、すぐに終了してください。
たとえば、フロー チェーンが login->information->message->close であるとします。
終了フローでは、終了状態は「returnToInformation」になります。
メッセージ フローには、on="returnToInformation" to="returnToInformation" への遷移があります。
「returnToInformation」もメッセージ フローの終了状態です。
次に、情報フローに on="returnToInformation" to="displayInformationPage" への遷移があり、情報ページが再表示されます。
これは、タブを表すグローバル フローを定義することで実現しました。次に、フローのタブを表し、現在のタブがアクティブかどうかを示すオブジェクトを定義しました。ユーザーがタブ間を移動すると、必要に応じてタブ オブジェクトを更新しました。
ユーザーがタブの 1 つをクリックすると、グローバル フローを使用してタブ間を移動できるようになりました (私の実装では、状態を表示するよりもアクションを呼び出す方が簡単であることがわかりました。再計算が必要になる場合があります)。
タブ バー自体については、単一の JSP に配置し、それを各フォームの上部に配置しました。これにより、更新が容易になりました。
それは最も良い解決策ではありませんが、うまくいきます。
幸運を。