Re:Earth Visualizer プラグイン API は、さまざまなコンポーネントにわたってイベントを処理するための一貫したパターンを提供します。イベントを使用することで、プラグインはユーザーのインタラクションやシステムの変化にリアルタイムで応答できます。
共通イベントメソッド
Section titled “共通イベントメソッド”Re:Earth Visualizer のすべてのイベント対応コンポーネントは、イベントのサブスクライブおよびアンサブスクライブに同じパターンを共有しています。
on メソッドを使用すると、指定したイベントが発生したときに呼び出されるイベントリスナーを登録できます。
on<T extends keyof EventType>( type: T, callback: (...args: EventType[T]) => void, options?: { once?: boolean }): void- type: 待ち受けるイベントタイプ
- callback: イベント発生時に実行する関数
- options(省略可能): 設定オプション
- once:
trueに設定すると、リスナーは一度呼び出された後に自動的に削除されます
- once:
// 基本的なイベントリスナーreearth.popup.on("close", () => { console.log("Popup was closed");});
// 一度だけトリガーされるイベントリスナーreearth.layers.on( "select", (layerId, featureId) => { console.log("Layer selected (this will only trigger once):", layerId, featureId); }, { once: true });off メソッドを使用すると、以前に登録したイベントリスナーを削除できます。
off<T extends keyof EventType>( type: T, callback: (...args: EventType[T]) => void): void- type: 登録を解除するイベントタイプ
- callback:
onで登録した関数
// コールバック関数を定義するconst handleClose = () => { console.log("Popup was closed");};
// イベントリスナーを登録するreearth.popup.on("close", handleClose);
// リスニングを停止する場合reearth.popup.off("close", handleClose);イベントタイプ
Section titled “イベントタイプ”Re:Earth Visualizer の各コンポーネントには独自のイベントタイプがあります。特定のイベントの詳細については、各コンポーネントのドキュメントを参照してください。