コンポーネントメソッドのコール
<aura:method> を使用して、コンポーネントの API の一部としてメソッドを定義します。これにより、コンポーネントイベントを起動して処理する代わりに、コンポーネントのクライアント側コントローラからメソッドを直接コールできるようになります。<aura:method> を使用すると、親コンポーネントに含まれる子コンポーネントのメソッドをコールする場合に、親コンポーネントに必要なコードが簡略化されます。
次の構文を使用して、JavaScript コードのメソッドをコールします。
cmp は、コンポーネントへの参照です。arg1, … argN は、メソッドに渡される引数の省略可能なカンマ区切りのリストです。
ボタンが含まれるコンポーネントの例を見てみましょう。ボタンのハンドラは、独自のコンポーネントイベントを起動して処理するのではなく、コンポーネントメソッドをコールします。
コンポーネントのソースは次のようになります。
これはクライアント側コントローラです。
この簡単な例では、メソッドに渡されるパラメータの記録のみを行います。
<aura:method> タグで name="sampleMethod" および action="{!c.doAction}" が設定されているため、メソッドが cmp.sampleMethod() でコールされて、コントローラの doAction() で処理されます。
継承されたメソッドの使用
スーパーコンポーネントを拡張するサブコンポーネントは、スーパーコンポーネントで定義されたメソッドにアクセスできます。
インターフェースに <aura:method> タグを含めることもできます。このインターフェースを実装するコンポーネントは、このメソッドにアクセスできます。