ライフサイクル・イベントからのアクション・チェーンの開始
ライフサイクル・イベントは、ページのライフサイクル中に実行される事前定義されたオカレンスです。 これらのイベントが発生したときにアクション・チェーンを開始するには、イベント・リスナーを作成します。 たとえば、ページのオープン時に一部のコンポーネント変数を初期化する場合は、vbEnterイベントをリスニングするアーティファクトにイベント・リスナーを作成できます。 次に、イベント・リスナーを設定して、コンポーネント変数に値を割り当てるアクション・チェーンをトリガーできます。
アクション・チェーンをトリガーするイベント・リスナーを作成する前に、ページ・ライフサイクルを理解することが重要です。これにより、ページ・ライフサイクルを強化するためにカスタム・コードをどこに接続するかがわかります。 applicationの各ページには、一連の処理ステップであるライフサイクルが定義されています。 これには、ページの初期化、変数とタイプの初期化、コンポーネントのレンダリングなどが含まれます。
ライフサイクルの各ステージには、関連付けられたイベントがあります。 これらのイベントに対して"listen"を行い、要件に基づいて何かを実行するたびにアクション・チェーンを開始できます。 たとえば、ページのロード前にデータをロードするには、vbEnterイベントを使用し、GET RESTエンドポイントを呼び出すアクション・チェーンを起動できます。
1つ以上のページでフローを作成し、各フローに独自のライフサイクルがあることに注意してください。
次の表では、ページ内のアクション・チェーンを開始するために使用できるライフサイクル・イベントについて説明します:
| ライフサイクル・イベント | 説明 |
|---|---|
vbBeforeEnter |
ページに移動する前にトリガーされます。 ユーザーがページにアクセスしたり、ユーザーを別のページ(ログイン画面など)にリダイレクトする権限を持っていない場合によく使用されます。
このイベントはページに移動する前にページにディスパッチされるため、プロパティ このイベントでは、次の変数スコープを使用してデータを取得できます:
|
vbEnter |
コンテナ・スコープ変数がデフォルト値、URLパラメータの値または永続値で追加および初期化され、現在のコンテナ階層およびapplication内のすべてのフローおよびページにディスパッチされた後にトリガーされます。 一般的にデータのフェッチに使用されます。
このイベントでは、次の変数スコープを使用してデータを取得できます:
|
vbBeforeExit |
ページから移動する前に、階層内のすべてのページでトリガーされます。 ユーザーがページを離れる前にページを保存する必要がある場合に警告したり、プロパティ{ cancelled: true }でオブジェクトを返すことでページへのナビゲーションを取り消したり(そのページを表示する権限がユーザーにないため)、一般に使用されます。
|
vbExit |
ページから移動するときにトリガーされ、現在のコンテナ階層内のすべてのフローおよびページにディスパッチされます。 ログアウト後にユーザー・セッションの詳細を削除する場合など、ページを離れる前にクリーン・アップを実行するために一般的に使用されます。 |
vbAfterNavigate |
ページへのナビゲーションが完了した後にトリガーされ、階層およびapplicationのすべてのページおよびフローにディスパッチされます。
イベント・ペイロード(
$event)は、次のプロパティを持つオブジェクトです:
|
vbNotification |
起動通知アクションがアプリケーションによって起動されたときにトリガーされます。 |
vbResourceChanged |
アプリケーションが更新されたときにトリガーされます。 通常、更新されたアプリケーションを表示するためにリフレッシュする必要があることをユーザーに通知するために使用されます。 |
vbDataProviderNotification |
データ・プロバイダの暗黙的なフェッチがエラーで失敗した場合にトリガーされます。 |
ノート:
ライフサイクル・イベントはフラグメントでもサポートされ、ページで使用されるイベントと同様に機能します。ただし、フラグメントを操作しているときにすべてのイベントを使用できるわけではありません。 フラグメント内でサポートされているライフサイクル・イベントについては、「フラグメントでの処理およびイベントの定義」を参照してください。ライフサイクル・イベントからアクションを開始するには:

