apex:component
カスタム Visualforce コンポーネントです。すべてのカスタムコンポーネントの定義は 1 つの <apex:component> タグ内でラップされている必要があります。
このコンポーネントでは、「html-」プレフィックスを使用した HTML パススルー属性がサポートされています。パススルー属性は、layout 属性に応じて、生成されたコンテナタグである <div> または <span> に適用されます。
例
1<!-- Page: -->
2
3<apex:page>
4 <c:myComponent myValue="My component's value" borderColor="red" />
5</apex:page>
6
7<!-- Component:myComponent -->
8
9<apex:component>
10 <apex:attribute name="myValue" description="This is the value for the component."
11 type="String" required="true"/>
12
13 <apex:attribute name="borderColor" description="This is color for the border."
14 type="String" required="true"/>
15
16 <h1 style="border:{!borderColor}">
17 <apex:outputText value="{!myValue}"/>
18 </h1>
19
20</apex:component>属性
| 属性名 | 属性型 | 説明 | 必須項目 | API バージョン | 通用範囲 |
|---|---|---|---|---|---|
| access | String | コンポーネントを同じ名前空間の任意のページ外でコンポーネントとして使用できるかどうかを示す。使用できる値は、「public」(デフォルト) および「global」です。コンポーネントをコンポーネントの名前空間外で使用できるように指定する場合は、global を使用します。アクセス属性が global に設定されている場合は、すべての必須の子 apex:attributes のアクセス属性も global に設定する必要があります。アクセス属性が public に設定されている場合は、子 apex:attributes のアクセス属性を global に設定することはできません。注意: この指定があるコンポーネントには、管理パッケージの説明にある非推奨ポリシーが適用されます。 | 14.0 | ||
| allowDML | Boolean | この属性が「true」に設定されている場合、コンポーネント内に DML を指定できる。デフォルトは「false」です。DML を使用することにより、コンシューマがコンポーネントを使用してページの部分更新を行ううえで問題となり得る副次的影響がある場合があります。コンポーネント内で DML を使用する場合は、コンシューマがページを適切に更新できるように rerender 属性を指定する必要があります。また、コンポーネントの説明で DML が処理するデータの種類の詳細を示して、発生する可能性のある副次的影響をコンポーネントのコンシューマが認識できるようにする必要があります。 | 13.0 | グローバル | |
| controller | String | このカスタムコンポーネントの動作の制御に使用される Apex コントローラの名前。 | 12.0 | グローバル | |
| extensions | String | このカスタムコンポーネントに追加ロジックを追加する 1 つ以上のコントローラ拡張の名前。 | 12.0 | グローバル | |
| id | String | コンポーネント定義で他のタグがコンポーネントを参照できるようにする識別子。 | 12.0 | グローバル | |
| language | String | 関連付けられている翻訳が Salesforce にあるラベルの表示に使用される言語。この値はコンポーネントを参照しているユーザの言語より優先されます。この属性に使用できる値には、「en」、「en-US」などの Salesforce でサポートされている言語の言語キーがあります。 | 12.0 | グローバル | |
| layout | String | コンポーネントの HTML レイアウトスタイル。使用できる値には、「block」(HTML div タグでコンポーネントをラップする)、「inline」(HTML span タグでコンポーネントをラップする)、および「none」(生成される HTML タグでコンポーネントをラップしない) があります。指定されていない場合、この値はデフォルトの「inline」に設定されます。 | 12.0 | グローバル | |
| rendered | Boolean | カスタムコンポーネントを表示するかどうかを指定する boolean 値。指定されていない場合、この値はデフォルトの「true」に設定されます。 | 12.0 | グローバル | |
| selfClosing | Boolean | Visualforce エディタでこのコンポーネントを終了する方法を指定する boolean 値。この属性が「true」に設定されている場合、Visualforce エディタがコンポーネントを自己終了タグとしてオートコンプリートします。「true」に設定されていない場合、開始タグおよび終了タグでコンポーネントをオートコンプリートします。 たとえば、この属性が myComponent という名前のコンポーネントで「true」に設定されている場合、エディタはこのコンポーネントタグを <c:myComponent/> のようにオートコンプリートします。「false」に設定されている場合、エディタはこのタグを <c:myComponent></c:myComponent> のようにオートコンプリートします。 コンポーネントに componentBody が含まれている場合、この属性のデフォルトは「false」です。コンポーネントに componentBody が含まれていない場合は、この属性のデフォルトは「true」です。 |
15.0 |