フラグメントとその親コンテナ間でデータを渡す
フラグメントとその親コンテナ(たとえば、ページまたは別の外部フラグメントのような別のコンテナ)間でデータを渡すには、フラグメント変数を必須またはオプションの入力パラメータとしてコンテナに対して有効にする必要があります。 変数をコンテナに直接"write back"できるようにすることもできます。
ページ(または外部コンテナ)からフラグメントへのデータの受渡し
フラグメント変数を定義し、必須またはオプションの入力パラメータとして有効にすると、ページまたはフラグメントを使用するコンテナが入力パラメータの値を提供できます。 たとえば、ページは、その変数を定義したり、フラグメント入力パラメータに関連付けることができます。 このようにして、ページ変数値がフラグメントで有効になっている入力パラメータの初期値として使用されます。 「ページ変数を有効にしてフラグメント入力パラメータの初期値を指定」を参照してください。
同じページ変数の値が"mid-cycle"に変更されると、更新された値はフラグメント入力パラメータに自動的に再適用され、フラグメント変数でトリガーされたonValueChangedイベントにも適用されます。
フラグメントからページ(または外部コンテナ)へのデータの受渡し
これを行う方法は2つあり、選択するオプションはビジネス・ユース・ケースによって異なります:
- フラグメント変数を入力パラメータとして有効にすると、コンテナに書き戻すこともできます。 このオプションを使用すると、フラグメント変数への変更を入力パラメータとして使用したページ変数に自動的に書き戻すことができます。
- ページ変数への自動書込みバックは便利で強力ですが、フラグメント変数への複数の変更が発生する場合があります(たとえば、変数の状態をカスタム・イベントを介して収集して呼び出す必要があります)。 このようなシナリオでは、フラグメントからフラグメント・コンテナに"emit"するカスタム・イベントを定義できます。 コンテナに発行するカスタム・イベントは、そのコンテナを参照するページ(またはコンテナ)に情報を提供できます。
フラグメントに定義できる2つのタイプのカスタム・イベントがあることを覚えておくことが重要です(ここで説明するイベントは、この表の2番目のタイプです):
イベント・タイプ 説明 フラグメントで定義されたリスナーで処理できるイベント これらのイベントは、Visual Builderの他のカスタム・イベントに似ており、フラグメントで行われた統合状態の変更を外部コンテナに伝達するために使用されます。 たとえば、複数ステップ・サーベイとして定義されたフラグメントは、それ自体がノートを取るように通常のカスタム・イベント(たとえば、次へボタン)を生成する場合がありますが、サーベイの完了後、外部コンテナに(エントリとともに)完了状態を通信する場合があります。 コンテナに対して"emit"するイベント これらのイベントは、フラグメントの親コンテナに値を伝播するために使用されます。 「フラグメント親コンテナに発行するカスタム・イベントの作成」を参照してください。