詳細情報:
Vlocity Lightning Web コンポーネントの拡張 (管理パッケージ)
管理パッケージランタイムの場合、Vlocity Lightning Webコンポーネントを拡張してアプリケーションの動作とスタイルをカスタマイズします。たとえば、プロパティの上書き、他のコンポーネントの追加、HTML の挿入などです。
この情報は、OmniStudio for Managed Packages 用です。標準ランタイムの OmniStudio については、OmniStudio ヘルプを参照してください。
必要なバージョン |
|---|
Vlocity Insurance and Health Summer '19 および Vlocity CME Fall '19 以降で使用できます。 |
このコード例では、カスタム Lightning Web コンポーネントがボタン Lightning Web コンポーネントを拡張しています。コード例の NS 変数を、使用している Vlocity パッケージの名前空間に置き換えます。
//.js
import Button from "NS/button";
export default class buttonExtended extends Button {
//override the property here so it gets triggered
onclickbutton() {
this.label = "Button clicked";
}}
//.js-meta.xml
<?xml version="1.0" encoding="UTF-8"?><LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>45.0</apiVersion>
<isExposed>true</isExposed>
<masterLabel>button_extended</masterLabel>
<description>Button extended</description>
<targets>
<target>lightning__RecordPage</target>
<target>lightning__AppPage</target>
<target>lightning__HomePage</target>
</targets>
<runtimeNamespace>NS</runtimeNamespace>
</LightningComponentBundle>
//.html
<template>
//add HTML here to override the template layout
</template>
//_slds.css
//add CSS to override or append the SLDS theme css
.slds-button {
background: #cccccc;
border-color: #dddddd;
}
パッケージの外部で作成されたカスタム Lightning Web コンポーネントでは、Salesforce リソースを使用する Salesforce Lightning Web コンポーネントや、実行時にコンポーネントに影響する Salesforce Lightning Web コンポーネントは使用できません。詳細は、「Salesforce モジュール」を参照してください。
カスタム Lightning Web コンポーネントは、デバッグ モードが有効になっていない限りエラーをスローしません。詳細は、「 Debug Lightning Web Components 」を参照してください。
- IDXワークベンチまたはSalesforce DXがローカルに設定されていることを確認します。
- 拡張するコンポーネントを選択します。
-
新しいLightning Webコンポーネントを作成するには、プロジェクトのlwcフォルダに移動して、
lightning generate componentSalesforce CLIコマンドを実行します。次に例を示します。sf lightning generate component --type lwc --name componentname_extendedLightning Web コンポーネントの作成についての詳細は、「Lightning Web コンポーネントの作成」を参照してください。使用可能な Salesforce CLI コマンドの完全なリストについては、「Lightning コマンド」を参照してください。
- JavaScript ファイルで、Lightning Web コンポーネントをインポートして拡張します。このページのコード例を参照してください。
-
カスタム Lightning Web コンポーネントを Vlocity Lightning Web コンポーネントと互換性を持たせるには、XML 設定ファイルで次の 2 つのメタデータ タグを設定する必要があります。
Lightning Web Security(LWS)が無効になっている場合は、runtimeNamespaceメタデータ・タグを使用してVlocityパッケージの名前空間を追加します。
重要 LWS が有効になっている場合、コンポーネントの runtimeNamespace を設定すると、「Cannot use runtime namespace `somename` in module c-someComponentName」のようなエラーが発生します。組織で LWS が有効になっているかどうかを確認するには、「組織での Lightning Web セキュリティの有効化」を参照してください。isExposed メタデータタグを true に設定します。このページのコード例を参照してください。
- (省略可能)Vlocity Insurance and Health Winter '20 および Vlocity CME Winter '20 以降、共通アクション ユーティリティを使用してカスタム Lightning Web コンポーネントでリモート通話を実行できるようにします。
