Skip to main content

 

OutSystems 11オンラインヘルプ

 

 

OutSystems

画面をまたがるナビゲーションで状態を維持する

アプリのアプリケーションの状態の維持とは、画面が変わっても値が保持されることを言います。

リアクティブWebアプリとモバイルアプリのアプリケーションの状態

モバイルおよびリアクティブWebアプリでは、エンドユーザーが[Back]ボタンを使用したときに、前の画面の状態が自動的に維持されます。開発時の柔軟性を高めるために、クライアント変数を使用することができます。

ローカルストレージを使用してモバイルアプリの画面の状態を維持する方法については、FAQの「モバイル画面の状態の維持」をご覧ください。

例: クライアント変数の値をアプリ間で共有する

2つのアプリを作成し、それらの間でクライアント変数を共有する方法の詳細な例を以下に示します。ここでは、ブロックを使用して値を共有していますが、パブリッククライアントアクションを使用して値を共有することもできます。

最初のアプリとクライアント変数を作成する

  1. サンプルリアクティブWebアプリを作成し、「ReactiveAppA」という名前を付けて、Webモジュールを追加します。エディタが開いたら、アプリに画面を追加します。
  2. Data]タブに移動し、Client Variablesを右クリックして、[Add Client Variable]を選択します。変数に「MyClientVariable」という名前を付けます。
  3. Logic]タブに移動し、Client Actionsを右クリックして、[Add System Event > On Application Ready]を選択します。
  4. フローにAssignツールをドラッグし、Client.MyClientVariable = "Value from ReactiveAppA!"を割り当てます。これにより、アプリの実行が開始すると変数に値が設定されます。
  5. MainFlowにブロックを追加し、「BlockWithClientVariable」という名前を付けます。ブロックにExpressionウィジェットをドラッグし、ウィジェットのExpression Valueに「Client.MyClientVariable」と入力します。
  6. 画面にBlockWithClientVariableをドラッグします。
  7. BlockWithClientVariableのPublicプロパティを[Yes]に設定します。
  8. アプリをパブリッシュし、ブラウザで開きます。

クライアント変数を含むサンプルアプリA

2つ目のアプリを作成してクライアント変数の値を渡す

  1. 別のサンプルリアクティブWebアプリを作成し、「ReactiveAppB」という名前を付けて、Webモジュールを追加します。もう一度アプリに画面を追加します。
  2. Manage Dependencies]を開き、プロデューサ内でReactiveAppAを検索して、BlockWithClientVariableを選択します。[Apply]をクリックして参照を追加し、ダイアログを閉じます。
  3. 画面にBlockWithClientVariableをドラッグします。
  4. アプリをパブリッシュし、ブラウザで開きます。

従来のWebアプリのアプリケーションの状態

従来のWebアプリの画面をまたがるナビゲーションで状態を維持するには、セッション変数を作成します。

  • Was this article helpful?