Form
Formウィジェットは、formIdで指定した別のフォーム(画面)を読み込み、その場所に埋め込むコンテナウィジェットです。
画面の中に再利用可能なフォームをネストして配置し、親子フォーム間のメッセージ通信を接続するときに使用します。
定義・役割
Formウィジェットは、formIdで指定したフォームを読み込み、コンテナ領域にレンダリングします。埋め込まれたフォームは独立したコンテキストを持つため、親からウィジェットに直接アクセスせず、メッセージだけで通信します。スクリプトから別のフォームを読み込み直したり(loadForm)、埋め込まれたフォームにメッセージを送ったりできます(postMessage)。
- カテゴリー: Contents
- デフォルトの
formId:""(読み込むフォームが指定されていない状態で作成) - フォームが見つからない場合は
form not foundの案内が、読み込み中はローディング表示が現れます。
機能
| 機能 | 説明 |
|---|---|
| フォームの読み込み | formIdで指定したフォームを読み込み、コンテナの中にレンダリングします。 |
| フォームの差し替え | スクリプトからloadFormで、埋め込まれたフォームを別のフォームに変更します。 |
| メッセージの伝達 | スクリプトからpostMessageで、埋め込まれたフォームのメッセージハンドラーにデータを送ります。 |
| ローディング・空状態の表示 | フォームの読み込み中はローディング表示を、フォームが見つからない場合は案内文を表示します。 |
| 分析イベント | 埋め込まれたフォームの画面表示(view)分析イベントを送信するかどうかを設定します。 |
使い方
- 左のウィジェットパレットでContentsカテゴリーを開きます。
- Form項目をキャンバスへドラッグ&ドロップします。
- 右のプロパティパネルで、
formIdに読み込むフォームのID(パス)を入力します。 - 必要に応じて、埋め込まれたフォームとデータをやり取りできるよう、スクリプトで
postMessageを接続します。
プロパティ
| プロパティ | 説明 | デフォルト値 | 値 / タイプ |
|---|---|---|---|
formId | コンテナに読み込むフォームのID(パス) | ""(未指定) | 文字列 |
analyticsView | 埋め込まれたフォームの画面表示(view)分析イベントを送信するかどうか | true(オン) | true/false |
注意・ヒント
注記
formIdが空の場合や、存在しないフォームを指している場合は、コンテナにform not foundの案内だけが表示されます。読み込むフォームのIDを正確に指定してください。
ヒント
埋め込まれたフォームは独立したコンテキストのため、親からウィジェットに直接アクセスできません。データの受け渡しはpostMessageで、別のフォームへの差し替えはloadFormで行います。
さらに詳しく
ヒント
このウィジェットをスクリプトで制御するWidget Control(Property・Method・Event)の全体は、Form Widget Controlのドキュメントで確認してください。