コンポーネントの JavaScript ファイル

すべてのコンポーネントには、JavaScript ファイルが必要です。コンポーネントで UI を表示する場合は、JavaScript ファイルで HTML 要素を定義します。コンポーネントがサービスコンポーネント (ライブラリ) である場合、JavaScript ファイルで他のコンポーネントが使用する関数がエクスポートされます。

Lightning Web コンポーネントの JavaScript ファイルは、ES6 モジュールです。デフォルトでは、モジュール内で宣言されたすべてのものがローカルです。つまり、そのモジュールに制限されています。

モジュールで宣言されたクラス、関数、または変数をインポートするには、import ステートメントを使用します。モジュールで宣言されたクラス、関数、または変数を他のコードで使用できるようにするには、export ステートメントを使用します。

コンポーネントの JavaScript ファイルの最大ファイルサイズは 128 KB (131,072 バイト) です。

JavaScript ファイルは、componentName.js という命名規則に従います。たとえば、myComponent.js のように命名します。

すべての UI コンポーネントの JavaScript ファイルには、少なくとも次のコードが記述されている必要があります。

Lightning Web Components のコアモジュールは、lwc です。import ステートメントは、LightningElementlwc モジュールからインポートします。

LightningElement は、標準 HTML 要素のカスタムラッパーです。

Lightning Web コンポーネントの JavaScript クラスを作成するには、LightningElement を拡張します。他のクラスを拡張して、Lightning Web コンポーネントを作成することはできません。

export default キーワードは、他のコンポーネントが使用する MyComponent クラスをエクスポートします。このクラスは、UI コンポーネントのデフォルトエクスポートである必要があります。UI コンポーネントで他の変数や関数をエクスポートすることは現在サポートされていません。

この命名規則では、クラス名をパスカルケースで表記する必要があり、各単語の先頭の文字が大文字となります。myComponent.js の場合、クラス名は MyComponent となります。

JavaScript ファイルには、次のものを含めることができます。

  • 公開プロパティを介したコンポーネントの公開 API、および @api のアノテーションが付いたメソッド。
  • 項目
  • イベントハンドラ

UI コンポーネントのフォルダには、メインの myComponent.js ファイルのほかに、他の JavaScript ファイルも含めることができます。ただし、それらのファイルに含まれるコードはコンポーネント独自のものであり、共有することはできません。

コンポーネント間でコードを共有するには、ES6 モジュールを作成し、公開する変数または関数をエクスポートします。

ES6 モジュールは、他のモジュールが使用できる機能を明示的にエクスポートするファイルです。モジュールを使用すると、グローバル範囲に影響を与えることなく簡単にコードを作成できます。

「JavaScript コードの共有」を参照してください。

関連トピック