この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

コンポーネントイベント伝達

このフレームワークでは、キャプチャフェーズとバブルフェーズがコンポーネントイベントの伝達でサポートされます。これらのフェーズは DOM の処理パターンと似ており、対象のコンポーネントがイベントに対応したり、場合によっては後続のハンドラの動作を制御したりできます。

イベントを起動するコンポーネントは、参照元コンポーネントと呼ばれます。フレームワークでは、異なるフェーズでイベントを処理できます。これらのフェーズにより、アプリケーションのイベントの最適な処理を柔軟に行うことができます。

次のフェーズがあります。

キャプチャ
イベントがキャプチャされ、アプリケーションルートから参照元コンポーネントに伝達していきます。イベントはコンテインメント階層内のキャプチャイベントを受信するコンポーネントによって処理されます。
アプリケーションルートからイベントを起動した参照元コンポーネントへと順番にイベントハンドラが呼び出されていきます。
このフェーズの任意の登録ハンドラでイベントの伝達を停止できます。停止した時点でこのフェーズまたはバブルフェーズのハンドラはそれ以上コールされなくなります。
バブル
イベントを起動したコンポーネントはそのイベントを処理できます。その後イベントは参照元コンポーネントからアプリケーションルートにバブルアップしていきます。イベントはコンテインメント階層内のバブルイベントを受信するコンポーネントによって処理されます。
イベントを起動した参照元コンポーネントからアプリケーションルートへと順番にイベントハンドラが呼び出されていきます。
このフェーズの任意の登録ハンドラでイベントの伝達を停止できます。停止した時点でこのフェーズのハンドラはそれ以上コールされなくなります。

次に、コンポーネントイベントの伝達シーケンスを示します。

  1. イベントの起動 — コンポーネントイベントが起動します。
  2. キャプチャフェーズ — フレームワークはアプリケーションルートから参照元コンポーネントへのキャプチャフェーズをすべてのコンポーネントがトラバースされるまで実行します。任意のイベント処理で、イベントに対して stopPropagation() をコールして伝達を停止できます。
  3. バブルフェーズ — フレームワークは参照元コンポーネントからアプリケーションルートへのバブルフェーズをすべてのコンポーネントがトラバースされるまで、または stopPropagation() がコールされるまで実行します。

アプリケーションイベントには別個のデフォルトフェーズがあります。コンポーネントイベントには別個のデフォルトフェーズがありません。デフォルトフェーズはバブルフェーズです。

メモ