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

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

アプリケーションイベントを登録する

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

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

アプリケーションイベントを起動する

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

1var appEvent = $A.get("e.c:appEvent");
2// Optional: set some data for the event (also known as event shape)
3//appEvent.setParams({ "myParam" : myValue });
4appEvent.fire();

アプリケーションイベントのソースを取得する

evt.getSource() はアプリケーションイベントに対しては機能しません。コンポーネントイベントに対してのみ機能します。

コンポーネントイベントは通常、cmp.getEvent('cmpEvent').fire() のようなコードによって起動されるため、誰がイベントを起動したかが明白です。他方、どのコンポーネントがアプリケーションイベントを起動したかはやや不明瞭です。アプリケーションイベントは、$A.get('e.c.appEvent').fire(); のようなコードによって起動されます。

アプリケーションイベントのソースを確認する必要がある場合は、evt.setParams() を使用して、イベントを起動する前にイベントデータにソースコンポーネントを設定します。たとえば、evt.setParams("source" : sourceCmp) を使用します。この sourceCmp はソースコンポーネントへの参照です。

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

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

表示中にサーバコールが実行された場合は、aura:waiting が起動されます。

最後に、すべての表示が完了したことを示すために、aura:doneWaiting が起動されてから aura:doneRendering が起動されます。詳細は、「表示ライフサイクル中に起動されたイベント 」 を参照してください。