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

アプリケーションイベントの起動

アプリケーションイベントは、従来の公開/登録モデルに従います。アプリケーションイベントは、コンポーネントのインスタンスから起動されます。イベントのハンドラを提供するすべてのコンポーネントに通知されます。

イベントの登録

コンポーネントは、マークアップに <aura:registerEvent> を使用して、アプリケーションイベントを起動できるように登録します。name 属性は必須ですが、アプリケーションイベントでは使用されません。name 属性が関係するのは、コンポーネントイベントのみです。次の例では、name="appEvent" を使用していますが、この値はどこにも使用されていません。

1<aura:registerEvent name="appEvent" type="c:appEvent"/>

イベントの起動

JavaScript で $A.get("e.myNamespace:myAppEvent") を使用して、myNamespace 名前空間の myAppEvent イベントのインスタンスを取得します。

アプリケーションイベントのインスタンスを取得する構文は、コンポーネントイベントを取得する cmp.getEvent("evtName") 構文とは異なります。

メモ

fire() を使用して、イベントを起動します。

1var appEvent = $A.get("e.c:appEvent");
2// Optional: set some data for the event (also known as event shape)
3// A parameter’s name must match the name attribute
4// of one of the event’s <aura:attribute> tags
5//appEvent.setParams({ "myParam" : myValue });
6appEvent.fire();

アプリケーションの表示中に起動されるイベント

いくつかのイベントは、アプリケーションを表示中に起動されます。すべての init イベントは、コンポーネントまたはアプリケーションが初期化されたことを示すために起動されます。コンポーネントが別のコンポーネントまたはアプリケーションに含まれる場合は、まず内部のコンポーネントから初期化されます。

表示中にサーバコールが実行された場合は、aura:waiting が起動されます。フレームワークでサーバ応答を受信すると、aura:doneWaiting が起動されます。

最後に、すべての表示が完了すると、aura:doneRendering が起動されます。

従来の aura:waitingaura:doneWaiting、および aura:doneRendering アプリケーションイベントは、最後の手段としてのみ使用することをお勧めします。aura:waiting および aura:doneWaiting アプリケーションイベントは、一括処理されるサーバ要求 (アプリケーションの他のコンポーネントからの要求も含む) ごとに起動されます。コンポーネントがスタンドアロンアプリケーションで完全に独立した状態で実行されていて、Lightning Experience または Salesforce アプリケーションに含まれていない場合を除き、これらのアプリケーションイベントを処理することはおそらくないでしょう。コンテナアプリケーションは、サーバ側アクションを起動して、イベントハンドラを複数回トリガすることがあります。

メモ

詳細は、「表示ライフサイクル中に起動されたイベント 」 を参照してください。