Lightning ページと Lightning アプリケーションビルダーのコンポーネントの設定に関するヒントおよび考慮事項
Lightning ページおよび Lightning アプリケーションビルダーのコンポーネントおよびコンポーネントバンドルを作成する場合、次のガイドラインを参考にしてください。
コンポーネント
- デザインファイルの要素で label 属性を使用して、<design:component label="foo"> などのわかりやすい名前をコンポーネントに設定します。
- コンポーネントが表示領域の 100% の幅 (余白を含む) を占めるようにします。
- コンポーネントの幅を絶対値では設定しないでください。
- コンポーネントがユーザ操作を必要とする場合、宣言型ツールでコンポーネントの適切なプレースホルダ動作を指定する必要があります。
- コンポーネントに空白のボックスが表示されないようにする必要があります。他のサイトがどのように動作するかを考えます。たとえば、Facebook では、実際のフィード項目がサーバから返されるまでフィードの概要が表示されます。この概要により、UI 応答のユーザの認識が向上します。
- 起動されたイベントにコンポーネントが連動する場合は、イベントが起動される前に表示するデフォルトの状態を指定します。
- Lightning Experience のスタイル設定および Salesforce Design System と一貫性のある方法で、コンポーネントのスタイルを設定します。
- Lightning は、コンポーネント間のスペースを自動的に調整します。コンポーネントの CSS に余白を追加しないでください。また、パディングも追加しないでください。
- CSS プロパティでは float や position:absolute は使用しないでください。これらのプロパティを使用するとコンポーネントがページ構造からはみ出し、ページが破損します。
- 組織で [私のドメイン] が有効になっていない場合、カスタムコンポーネントが含まれる Lightning ページを有効化すると、コンポーネントは実行時にページからドロップされます。
属性
- デザインファイルを使用して、Lightning アプリケーションビルダーに公開する属性を制御します。
- システム管理者にとって使いやすくわかりやすい属性にします。SOQL クエリ、JSON オブジェクト、Apex クラス名は公開しません。
- 必須属性にはデフォルト値を指定します。デフォルト値のない必須属性を持つコンポーネントをアプリケーションビルダーに追加すると、無効と表示され、ユーザの操作性が低下します。
- 公開される属性には、サポートされる基本のデータ型 (string、integer、boolean) を使用します。
- <design:attribute> 要素の整数属性に最小値と最大値を指定して、有効な値範囲を制御します。
- 文字列属性では、事前定義された一連の値を持つデータ取得元を指定して、属性の設定を選択リストとして公開できます。
- すべての属性に、わかりやすい表示名を使用した表示ラベルを指定します。
- 説明を提供して、データ形式や予期される値範囲など、予期されるデータおよびガイドラインを説明します。説明テキストは、プロパティエディタにツールチップとして表示されます。
- flexipage:availableForAllPageTypes または forceCommunity:availableForAllPageTypes インターフェースを実装するコンポーネントの設計属性を削除するには、まずコンポーネントからインターフェースを削除した後、設計属性を削除します。その後でインターフェースを再実装します。コンポーネントが Lightning ページで参照されている場合は、変更する前にページからコンポーネントを削除する必要があります。
制限事項
- Lightning アプリケーションビルダー は、Map 型、Object 型、または java:// 複合型をサポートしません。
- Lightning アプリケーションビルダーを使用する場合、グループページの編集には既知の制限があります。変更は、[グループ] タブからグループにアクセスしたときに表示されます。[Chatter] タブの [最近参照したグループ] リストからグループにアクセスした場合、変更は表示されません。