コンポーネントの名前空間
すべてのコンポーネントは、何らかの名前空間に属している必要があります。
独自のコンポーネントを参照するには、コーディング時に必ずデフォルトの名前空間 c を使用してください。コードの実行場所にかかわらず、つまり、名前空間がある組織、名前空間がない組織、管理パッケージ、未管理パッケージにかかわらず、c を使用します。
HTML テンプレート内で lightning 名前空間のコンポーネントを参照するには、<lightning-component-name> を使用します。名前空間とコンポーネント名は、ハイフン文字 (-) で区切られています。
このコンポーネントは、lightning 名前空間の Lightning 基本コンポーネントである lightning-card を参照します。また、同じプロジェクトのカスタムコンポーネントである c-contact-tile も参照します。
JavaScript クラス内でモジュール (サービスコンポーネントまたはライブラリとも呼ばれる) を参照するには、namespace/module を追加します。名前空間とモジュール名は、スラッシュ文字 (/) で区切られています。
Winter ’23 では、新しい組織の Lightning Web コンポーネント用 Lightning Web セキュリティはデフォルトで有効になります。
Lightning Web セキュリティが有効な組織でコンポーネントを実行した場合、コンポーネントは他の名前空間からモジュールをインポートできます。詳細は、「Lightning Web セキュリティと Lightning Locker の比較」を参照してください。
名前空間を使用するときのガイドラインを次に示します。
- Lightning Web セキュリティではなく Lightning Locker を使用している組織で実行した場合、カスタム Lightning Web コンポーネントは、カスタム名前空間の Lightning Web コンポーネントやモジュールにはアクセスできません。
- Lightning Web セキュリティではなく Lightning Locker を使用している組織で実行した場合は、名前空間
cおよびlightningの Lightning Web コンポーネントとモジュールにのみアクセスできます。 - コンポーネントを実行する組織で Lightning Locker と Lightning Web セキュリティのどちらが有効であるかにかかわらず、同じ名前空間では、カスタム Lightning Web コンポーネントとカスタム Aura コンポーネントの名前を同じにすることはできません。