LightningComponentBundle
特別なアクセスルール
LightningComponentBundle コンポーネントは、名前空間が定義されている組織でのみ作成できます。
Summer '20 以降、この型にアクセスできるのは、Salesforce 組織の内部ユーザーのみとなります。
項目
| 項目名 | 項目の型 | 説明 |
|---|---|---|
| apiVersion | double | コンポーネントを Salesforce API バージョンにバインドする double 値。 |
| capabilities | Capabilities[] | 機能のリスト。機能とは、コンポーネントが実行できることで、対象と対照をなします。対象は、コンポーネントを使用できる場所です。API バージョン 48.0 以降で利用できます。 |
| description | string | Lightning Web コンポーネントの説明。 |
| isExplicitImport | boolean | ファイル間のインポートが開発者によって明示的に行われるか (true)、フレームワークによって暗黙的に行われるか (false) を示します。 |
| isExposed | boolean | 管理パッケージでコンポーネントを使用できるか (true)、否か (false) を示します。 |
| lwcResources | LwcResources[] | バンドル内のリソースのリスト。 |
| masterLabel | string | リストビューに表示されるコンポーネントタイトル。 |
| targetConfigs | base64Binary | 各対象の設定。各対象は Lightning ページ種別です。たとえば、この設定により、Lightning Web コンポーネントを Lightning アプリケーションビルダーの取引先責任者レコードページで使用できます。 |
| targets | Targets[] | Lightning Web コンポーネントがサポートされる対象のリスト。各対象は、Lightning アプリケーションビルダーで設定可能な Lightning ページ種別です。 |
機能
機能のリストを表します。機能とは、コンポーネントが実行できることで、対象と対照をなします。対象は、コンポーネントを使用できる場所です。API バージョン 48.0 以降で利用できます。
| 項目 | 項目の型 | 説明 |
|---|---|---|
| capability | string | コンポーネントによって実行できる何らかの機能を指定します。有効な値は、lightningCommunity__RelaxedCSP のみです。この値を設定すると、管理パッケージからインストールされたコンポーネントを Lightning Locker が無効になっている Experience Cloud サイトで実行できるようになります。 |
LwcResources
LightningComponentBundle 内のリソースのリストを表します。
| 項目 | 項目の型 | 説明 |
|---|---|---|
| lwcResource | LwcResource | LightningComponentBundle 内のリソース。 |
LwcResource
LightningComponentBundle 内のリソースを表します。
| 項目 | 項目の型 | 説明 |
|---|---|---|
| filePath | string | 必須。リソースのファイルパス。 |
| source | base64Binary | 必須。リソースの内容。 |
Targets
Lightning Web コンポーネントでサポートされるコンテナのリストを表します。
| 項目 | 項目の型 | 説明 |
|---|---|---|
| target | string | Lightning アプリケーションビルダーでコンポーネントを追加可能な Lightning ページの種別を指定します。 有効な値は、次のとおりです。
|
宣言的なメタデータの定義のサンプル
この package.xml ファイルは、組織のすべての LightningComponentBundle コンポーネントを取得します。
1<?xml version="1.0" encoding="UTF-8"?>
2<Package xmlns="http://soap.sforce.com/2006/04/metadata">
3 <types>
4 <members>*</members>
5 <name>LightningComponentBundle</name>
6 </types>
7 <version>45.0</version>
8</Package>取得した zip ファイルで、各 Lightning Web コンポーネントは lwc フォルダー内にネストされます。
次の例は、名前が hello の 1 つのコンポーネントの zip ファイル内のディレクトリ構造を示しています。
1lwc
2 hello
3 hello.html
4 hello.js
5 hello.js-meta.xmlhello ディレクトリ内のファイルの内容は次のとおりです。
hello.html の内容:
1<template>
2
3 <lightning-card title="Hello" icon-name="custom:custom14">
4 <div class="slds-m-around_medium">
5 Hello, {greeting}!
6 </div>
7 </lightning-card>
8
9</template>hello.js の内容:
1import { LightningElement, track } from 'lwc';
2
3export default class Hello extends LightningElement {
4 @track greeting = 'World';
5}
hello.js-meta.xml の内容。
1<?xml version="1.0" encoding="UTF-8"?>
2<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
3 <apiVersion>45.0</apiVersion>
4 <isExposed>true</isExposed>
5 <targets>
6 <target>lightning__AppPage</target>
7 <target>lightning__RecordPage</target>
8 <target>lightning__HomePage</target>
9 </targets>
10</LightningComponentBundle>マニフェストファイル内のワイルドカードのサポート
このメタデータ型では、package.xml マニフェストファイル内のワイルドカード文字 * (アスタリスク) がサポートされます。マニフェストファイルの使用についての詳細は、「zip ファイルを使用したメタデータのリリースと取得」を参照してください。