コンポーネントの ID
コンポーネントには、ローカル ID とグローバル ID という 2 種類の ID があります。
ローカル ID
ローカル ID は、範囲がそのコンポーネント内のみの ID です。JavaScript コードにローカル ID を使用して、コンポーネントを取得できます。多くの場合ローカル ID は一意ですが、一意である必要はありません。
ローカル ID を作成するには、aura:id 属性を使用します。次に例を示します。
1<ui:button aura:id="button1" label="button1"/>このボタンコンポーネントを検索するには、クライアント側コ��トローラで cmp.find("button1") をコールします。ここで cmp は、ボタンが含まれるコンポーネントへの参照です。
- ローカル ID が一意である場合、find() はコンポーネントを返します。
- 同じローカル ID のコンポーネントが複数ある場合、find() はコンポーネントの配列を返します。
- 一致するローカル ID がない場合、find() は undefined を返します。
JavaScript でコンポーネントのローカル ID を検索するには、cmp.getLocalId() を使用します。
グローバル ID
すべてのコンポーネントには一意の globalId があります。これはコンポーネントインスタンスに対して生成される実行時に一意の ID です。グローバル ID は、コンポーネントの有効期間以外では同じである保証はないため、利用しないでください。
HTML 要素に一意の ID を作成するために、globalId を要素のプレフィックスまたはサフィックスとして使用できます。次に例を示します。
1<div id="{!globalId + '_footer'}"></div>JavaScript で getGlobalId() 関数を使用して、コンポーネントのグローバル ID を取得できます。
1var globalId = cmp.getGlobalId();逆の操作も可能で、グローバル ID があればコンポーネントを取得できます。
1var cmp = $A.getComponent(globalId);