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

コンポーネントメソッドのコール

<aura:method> を使用して、コンポーネントの API の一部としてメソッドを定義します。これにより、コンポーネントイベントを起動して処理する代わりに、コンポーネントのクライアント側コントローラからメソッドを直接コールできるようになります。<aura:method> を使用すると、親コンポーネントに含まれる子コンポーネントのメソッドをコールする場合に、親コンポーネントに必要なコードが簡略化されます。

コンポーネント間の通信

コンテインメント階層の下位と通信するには、aura:method を使用します。たとえば親コンポーネントで、その親に含まれる子コンポーネントの aura:method をコールします。

コンテインメント階層の上位と通信するには、子コンポーネントでコンポーネントイベントを起動し、そのイベントを親コンポーネントで処理します。

構文

次の構文を使用して、JavaScript コードのメソッドをコールします。

1cmp.sampleMethod(arg1, … argN);

cmp は、コンポーネントへの参照です。

sampleMethod は、aura:method の名前です。

arg1, … argN は、メソッドに渡される引数の省略可能なカンマ区切りのリストです。各引数は、aura:method マークアップで定義された aura:attribute に対応します。

継承されたメソッドの使用

スーパーコンポーネントを拡張するサブコンポーネントは、スーパーコンポーネントで定義されたメソッドにアクセスできます。

インターフェースに <aura:method> タグを含めることもできます。このインターフェースを実装するコンポーネントは、このメソッドにアクセスできます。

アプリケーションの例を見てみましょう。

1<!-- c:auraMethodCallerWrapper.app -->
2<aura:application >
3    <c:auraMethodCaller />
4</aura:application>

c:auraMethodCallerWrapper.app には c:auraMethodCaller コンポーネントが含まれます。

1<!-- c:auraMethodCaller.cmp -->
2<aura:component >
3    <p>Parent component calls aura:method in child component</p>
4    <c:auraMethod aura:id="child" />
5    
6    ...
7</aura:component>

c:auraMethodCaller は親コンポーネントです。c:auraMethodCaller には子コンポーネント c:auraMethod が含まれます。

c:auraMethodCaller を使用して c:auraMethod で定義された aura:method をコールする方法について説明します。

c:auraMethodCallerWrapper.app を使用して、同期コードと非同期コードの結果を返す方法を確認します。