レコードの読み込み
Lightning Data Service を使用してレコードを読み込むには、コンポーネントに force:recordPreview タグを追加します。force:recordPreview タグで、読み込むレコードの ID、項目のリスト、読み込まれたレコードを割り当てる属性を指定します。
レコードの読み込みは、Lightning Data Service の最も簡単な操作です。すべてマークアップで達成できます。force:recordPreview で次の 3 つの事項を指定する必要があります。
- 読み込むレコードの ID
- 読み込まれたレコードが割り当てられるコンポーネント属性
- 読み込む項目のリスト
読み込む項目のリストは、fields 属性を使用して明示的に指定できます。クエリする項目のリストを記入するだけです。たとえば、fields="Name,BillingCity,BillingState" です。
または、より強力な方法として、layoutType 属性を使用してレイアウトを指定することもできます。そのレイアウトのすべての項目がレコードに読み込まれます。レイアウトは通常、システム管理者が変更します。layoutType を使用してレコードデータを読み込むと、コンポーネントをこれらのレイアウト定義に適合させることができます。使用可能なレイアウトはいくつかありますが、実際には FULL および COMPACT レイアウトが一番簡単で広く使用されています。
レコードの読み込み
次の例は、Lightning Data Service を使用したレコードの読み込みの要点を示しています。このコンポーネントは、Lightning アプリケーションビルダーのレコードホームページに追加するか、カスタムアクションとして追加することができます。レコード ID は、force:hasRecordId インターフェースによって追加される暗黙的な recordId 属性によって指定されます。
ldsLoad.cmp
1<aura:component
2 implements="flexipage:availableForRecordHome,force:lightningQuickActionWithoutHeader,force:hasRecordId">
3
4 <aura:attribute name="record" type="Object"/>
5 <aura:attribute name="recordError" type="String"/>
6
7 <force:recordPreview aura:id="recordLoader"
8 recordId="{!v.recordId}"
9 layoutType="FULL"
10 targetRecord="{!v.record}"
11 targetError="{!v.recordError}"
12 />
13
14 <!-- Display a header with details about the record -->
15 <div class="slds-page-header" role="banner">
16 <p class="slds-text-heading--label">{!v.record.Name}</p>
17 <h1 class="slds-page-header__title slds-m-right--small
18 slds-truncate slds-align-left">{!v.record.BillingCity}, {!v.record.BillingState}</h1>
19 </div>
20
21 <!-- Display Lightning Data Service errors, if any -->
22 <aura:if isTrue="{!not(empty(v.recordError))}">
23 <div class="recordError">
24 <ui:message title="Error" severity="error" closable="true">
25 {!v.recordError}
26 </ui:message>
27 </div>
28 </aura:if>
29
30</aura:component>