概要

概要

Lightning Web コンポーネント拡張機能では、エディタに内蔵されたコードナビゲーションや言語機能を活用し、Lightning Web コンポーネントを効率的に構築することができます。

以下の Lightning Web コンポーネント拡張機能を利用できます。

コード補完

Lightning Web コンポーネント拡張機能は、VS Code の HTMLJavaScript の言語機能をベースに、シンタックスハイライト、ブラケットマッチング、IntelliSense による言語固有のコード補完などを実現しています。この拡張機能は、以下の Lightning Web コンポーネントリソースのコード補完を提供します。

Code Snippets

Code snippets are available for scaffolding class and interface definitions, and a variety of statements such as loops and conditional statements, and so on. When you’re working in an LWC HTML file, run Insert Snippet from the Command Palette to view the available snippets. You can also view these code snippets as code completion suggestions by typing the component name (e.g., accordion).

Out of the box snippets for Salesforce development are available in these repositories:

@salesforce スコープのモジュール

Lightning コンポーネントでは scoped modules を通して Salesforce の値にアクセスします。Lightning Web コンポーネント拡張機能は、以下の scoped modules に対するコード補完を提供します。

  • @salesforce/resourceUrl
  • @salesforce/contentAssetUrl
  • @salesforce/apex
  • @salesforce/user

@salesforce モジュールについての詳細は、『Lightning Web コンポーネント開発者ガイド』に記載されている、@salesforce モジュール」を参照してください。

以下の例では、import 文の補完にあたり、可能性のある静的リソースの名前を候補として表示しています。

静的リソースの補完

以下は、@salesforce/schema に対するコード補完の例です。

Schema の補完

以下は、Apex コントローラに対するコード補完の例です。

Apex の補完

Lightning API

VS Code は、lightning/uiObjectInfoApilightning/uiRecordApi のような Lightning API リソースに対してもコード補完を提供します。詳細は、『Lightning Web コンポーネント開発者ガイド』に記載されている、lightning/ui*Api ワイヤアダプタと関数」を参照してください。

Lightning Web コンポーネントの構文

VS Code は Lightning Web コンポーネントフレームワークが備えるリアクティブプロパティやワイヤサービスを補完します。詳細は、『Lightning Web コンポーネント開発者ガイド』に記載されている、「リアクティビティ」 および「ワイヤサービスを使用したデータの取得」を参照してください。

以下は、@wire デコレータの getContactList Apex 関数を含むコード補完の例です。

Lightning @wire の補完

HTML 属性とタグにおける名前空間の補完

コード補完は、lightning および c 名前空間のコンポーネントの HTML タグおよび属性に対しても利用できます。以下では、c-view-source タグにおいて source 属性が補完されています。

HTML 属性の補完

カーソルを置くとコンポーネントドキュメントを表示

lightning 名前空間の 標準の Lightning Web コンポーネントにカーソルを置いたときに、そのドキュメントを表示します。c 名前空間のカスタムコンポーネントでも、そのカスタムコンポーネントのドキュメントを提供している場合は、ドキュメントを表示します。以下はでは、lightning-layout のドキュメントを表示しています。このドロップダウンには、コンポーネントライブラリでコンポーネントを表示するためのリンクも含まれます。

カーソルを合わせたときのドキュメント

リンティング

編集中のコードが不正な形式であったり、疑わしい場合にエラーを表示します。VS Code は、Salesforce の ESLint ルールを適用します。ESLint を有効にするには、コマンドラインからインストールします。手順については、Lightning Web Components ESLint Plugin および Lightning Web Components ESLint Config のリポジトリを参照してください。

以下の例では、onpress にカーソルを置いたとき、API プロパティには “on” で始まる名前を使用できないとリンターがレポートしています。

問題の表示とクイックフィックス

VS Code には、クイックフィックスや問題の表示など、問題に素早く対処してコードをリファクタリングするためのアクションが用意されています。詳細については、『VS Code ドキュメント』の 「Refactoring」 を参照してください。

エラーメッセージの 問題を表示する をクリックすると、リンターがエラーを発見した行がハイライトされます。複数のエラーがあると表示されている場合は、メッセージの右上にある下矢印をクリックすると、他のエラーが表示されます。

問題を表示を使用したリンターの例

以下では、[Quick Fix (クイック フィックス)] をクリックすると、行内やファイル内の有効な API 名に対する警告を無効にするオプションや、ドキュメントへのリンクが表示されています。これらの同じオプションは、@api onpress; の隣にある黄色い電球のアイコンをクリックすることでも表示できます。

クイックフィックスを使用したリンターの例

エラーと警告

ファイルとコンパイラのエラーがカーソルを置くと表示されます。以下では、@track にカーソルを合わせたときに、それが宣言されていないという内容のエラーが表示されています。

カーソルを合わせたときのドキュメント

コードナビゲーション

VS Code には、現在作業中のコードを見失うことなく、コード内の定義をプレビューしたり、ジャンプしたりするためのショートカットが用意されています。詳細は、『VS Code ドキュメント』の 「Code Navigation」 セクションを参照してください。

定義をプレビューするには、Ctrl (Windows または Linux) または Command (macOS) を押しながら、定義を見たい項目の上にカーソルを置きます。以下の例では、c 名前空間コンポーネントのソースをプレビューしています。

c名前空間のソースを表示

定義を参照するには、項目を右クリックし、Peek Definition (定義をここに表示) を選択するか Alt+F12 を押します。

定義の場所にジャンプするには、項目を右クリックし、Go to Definition (定義に移動) を選択するか F12 を押します。

js-meta.xml のサポート

VS Code では、Red Hat の XML VS Code 拡張機能を js-meta.xml に統合することで、IntelliSense をサポートしています。これにより、自動提案、シンタックスエラーのレポート、リネームのサポート、コードの自動生成など、これら以外にも拡張機能にデフォルトで備わる機能を活用することができます。

js-meta.xml の target に対する候補を表示

Feedback or Bugs | Edit this Article