SPEvent class
コンポーネントがサブスクライブできるフレームワーク イベントを表します。
注釈
Web アプリケーションのイベントの例としては、ボタンをクリックしているユーザー、別のページに移動するシステム、抽象コレクションに追加または削除されるアイテムなどがあります。 SharePoint Frameworkは、SPEvent オブジェクトのインスタンスを使用してイベントを表します。イベントの種類ごとに 1 つ。 SPEvent オブジェクトは通常、関連付けられているクラスのプロパティとして公開されます (クリックできるボタンなど)。 コンポーネントがイベントに関心がある場合は、add() を呼び出して、イベントが発生するたびに呼び出されるイベント ハンドラー コールバックを登録します。 ハンドラーは SPEventArgs パラメーターを受け取ります。このパラメーターは、発生した内容に関する追加の詳細を提供する可能性があります。 これは、ブラウザーのドキュメント オブジェクト モデル (DOM) イベントに似ています。 メイン違いは、ISPEventObserver 機能です。この機能は、各イベントをサブスクライブしたコンポーネントを追跡し、コンポーネントが破棄されたときにハンドラーのサブスクライブを自動的に解除します。
イベントが発生すると、すべてのハンドラーが同期的に呼び出されます。 イベント ハンドラーが呼び出される順序は指定されていません。 イベント ハンドラー コールバックは、処理中に発生した例外をキャッチする必要があります。キャッチされない例外は、他のハンドラーの実行を妨げませんが、関連するコンポーネントの問題として報告されます。
このクラスのコンストラクターは、内部にマークされています。 サードパーティのコードは、コンストラクターを直接呼び出したり、SPEvent
クラスを展開するサブクラスを作成したりすることはできません。
メソッド
add(observer, event |
イベントが発生するたびに呼び出されるコールバックを登録します。 |
remove(observer, event |
add() を使用して登録されたコールバックの登録を解除します。 |
メソッドの詳細
add(observer, eventHandler)
イベントが発生するたびに呼び出されるコールバックを登録します。
add(observer: ISPEventObserver, eventHandler: (eventArgs: TEventArgs) => void): void;
パラメーター
- observer
- ISPEventObserver
イベントをサブスクライブしているオブジェクトを示します。オブジェクトが破棄されると、イベント ハンドラーが自動的に削除されます。 このオブジェクトは、イベント ハンドラーが例外をキャッチできなかったかどうかを検出するなどの診断目的にも使用されます。
- eventHandler
-
(eventArgs: TEventArgs) => void
イベントが発生するたびに呼び出されるコールバック関数
戻り値
void
注釈
同じオブジェクトは、同じイベントに複数のイベント ハンドラーを追加できます。 BaseComponent は ISPEventObserver インターフェイスを実装するため、Web パーツまたは拡張機能はオブザーバーとしてそれ自体を渡すことができます。 これにより、Web パーツまたは拡張機能が破棄されると、イベント ハンドラーが自動的にサブスクライブ解除されます。
remove(observer, eventHandler)
add() を使用して登録されたコールバックの登録を解除します。
remove(observer: ISPEventObserver, eventHandler: (eventArgs: TEventArgs) => void): void;
パラメーター
- observer
- ISPEventObserver
これは、add() 関数に渡されたオブザーバーと同じである必要があります。
- eventHandler
-
(eventArgs: TEventArgs) => void
削除するイベント ハンドラー。これは、add() 関数に渡されたのと同じオブジェクト インスタンスである必要があります。
戻り値
void
注釈
イベント ハンドラーが既に削除されている場合、または追加されなかった場合、このメソッドは効果がありません。