Visual Studio の JavaScript および TypeScript

Visual Studio 2022 は、JavaScript 開発のサポートが充実しており、JavaScript を直接使用することも、TypeScript プログラミング言語を使用することもできます。TypeScript プログラミング言語は、特に大規模なプロジェクトの開発で、JavaScript 開発の生産性や楽しさが向上するように作成されています。 Visual Studio では、多くのアプリケーション タイプやサービス用に JavaScript または TypeScript コードを記述できます。

JavaScript 言語サービス

Visual Studio 2022 の JavaScript エクスペリエンスは、TypeScript サポートを提供するのと同じエンジンで実現されています。 このエンジンにより、そのまますぐに向上した機能のサポート、豊富さ、統合を利用できます。

レガシ JavaScript 言語サービスに復元するオプションは、利用できなくなりました。 ユーザーは、新しい JavaScript 言語サービスをすぐに使用できます。 新しい言語サービスは、静的分析によって強化された TypeScript 言語サービスのみをベースにしています。 このサービスによりツールの機能が向上するため、JavaScript コードは型定義に基づく高度な IntelliSense の恩恵を受けられるようになります。 新しいサービスは軽量で、消費メモリがレガシ サービスより少ないため、コード サイズが大きくなっても、優れたパフォーマンスが得られます。 また、より大きなプロジェクトを処理するために、言語サービスのパフォーマンスが向上しています。

TypeScript のサポート

既定の状態で、Visual Studio 2022 により IntelliSense の機能を強化するための JavaScript および TypeScript ファイルに関する言語サポートが提供され、特定のプロジェクト構成は必要ありません。

Visual Studio で TypeScript をコンパイルするときは、使用する TypeScript のバージョンをプロジェクトごとに柔軟に選択できます。

MSBuild のコンパイルのシナリオ (ASP.NET Core など) で、プロジェクトに TypeScript のコンパイルのサポートを追加するには、TypeScript NuGet パッケージが推奨される方法です。 プロジェクトに TypeScript ファイルを初めて追加するときに、Visual Studio のオプションを使用してこのパッケージを追加できます。 また、このパッケージは、NuGet パッケージ マネージャーを通していつでも利用できます。 NuGet パッケージを使用すると、対応する言語サービスのバージョンがプロジェクトでの言語サポートに使用されます。 注: このパッケージのサポートされている最小バージョンは 3.6 です。

npm 用に構成されたプロジェクト (Node.js プロジェクトなど) では、TypeScript npm パッケージを追加することによって、TypeScript 言語サービスの独自のバージョンを指定できます。 サポートされているプロジェクトでは、npm マネージャーを使用してバージョンを指定できます。 注: このパッケージのサポートされている最小バージョンは 2.1 です。

TypeScript SDK は Visual Studio 2022 では非推奨になっています。 SDK に依存する既存のプロジェクトは、NuGet パッケージを使用するようにアップグレードする必要があります。 プロジェクトをすぐにアップグレードできない場合は、SDK を Visual Studio Marketplace で入手し、Visual Studio インストーラーでオプション コンポーネントとして引き続き使用できます。

ヒント

プロジェクトが Visual Studio 2022 で開発されている場合は、TypeScript NuGet または TypeScript npm パッケージを使用することをお勧めします。これにより、さまざまなプラットフォームや環境の間で移植性が向上します。 詳細については、NuGet を使用した TypeScript コードのコンパイルtsc を使用した TypeScript コードのコンパイルに関する記事をご覧ください。

プロジェクト テンプレート

Visual Studio 2022 以降では、JavaScript Project System (JSPS) と呼ばれる新しい JavaScript/TypeScript プロジェクトの種類 (.esproj) があり、Visual Studio でスタンドアロンの Angular、React、および Vue プロジェクトを作成できます。 これらのフロントエンド プロジェクトは、ユーザーがローカル コンピューターにインストールしたフレームワーク CLI ツールを使用して作成されるため、テンプレートのバージョンはユーザーが決定できます。 既存の Node.js プロジェクトから新しいプロジェクト システムに移行するには、「Node.js プロジェクトを移行する」を参照してください。 新しいプロジェクトの種類の MSBuild の情報については、JSPS の MSBuild プロパティを参照してください

これらの新しいプロジェクトでは、JavaScript や TypeScript の単体テストを実行し、ASP.NET Core API プロジェクトを簡単に追加してそれに接続し、npm マネージャーを使用して npm モジュールをダウンロードすることができます。 始めるときは、クイックスタートとチュートリアルを確認してください。 詳細については、「Visual Studio チュートリアル | JavaScript と TypeScript」を参照してください。

注意

Visual Studio 2022 バージョン 17.5 以降では、簡略化および更新されたテンプレートを使用できます。 Visual Studio で使用できる ASP.NET SPA テンプレートと比較して、ASP.NET Core 用の .esproj SPA テンプレートを使用すると、より優れた npm 依存関係管理と、ビルドと発行に対するより優れたサポートが実現します。

Visual Studio 2019 は、JavaScript 開発のサポートが充実しており、JavaScript を直接使用することも、TypeScript プログラミング言語を使用することもできます。TypeScript プログラミング言語は、特に大規模なプロジェクトの開発で、JavaScript 開発の生産性や楽しさが向上するように作成されています。 Visual Studio では、多くのアプリケーション タイプやサービス用に JavaScript または TypeScript コードを記述できます。

JavaScript 言語サービス

Visual Studio 2019 の JavaScript エクスペリエンスは、TypeScript サポートを提供するのと同じエンジンで実現されています。 このため、機能のサポートや豊富さが向上し、統合も簡単に行えるようになっています。

レガシ JavaScript 言語サービスに復元するオプションは、利用できなくなりました。 現在は、すぐに利用できる新しい JavaScript 言語サービスが用意されています。 新しい言語サービスは、静的分析によって強化された TypeScript 言語サービスのみをベースにしています。 これによりツールの機能が向上するため、JavaScript コードは型定義に基づく高度な IntelliSense の恩恵を受けられるようになります。 新しいサービスは軽量で、消費メモリがレガシ サービスより少ないため、コード サイズが大きくなっても、優れたパフォーマンスが得られます。 また、より大きなプロジェクトを処理するために、言語サービスのパフォーマンスが向上しています。

TypeScript のサポート

Visual Studio 2019 では、TypeScript のコンパイルをプロジェクトに統合するためのオプションが複数用意されています。

  • TypeScript NuGet パッケージ。 TypeScript 3.2 以降の NuGet パッケージがプロジェクトにインストールされているときは、対応するバージョンの TypeScript 言語サービスがエディターに読み込まれます。
  • TypeScript npm パッケージ。 TypeScript 2.1 以降の npm パッケージがプロジェクトにインストールされているときは、対応するバージョンの TypeScript 言語サービスがエディターに読み込まれます。
  • Visual Studio のインストーラーで既定で使用可能な TypeScript SDK、および VS Marketplace からダウンロードされたスタンドアロンの SDK。

ヒント

プロジェクトが Visual Studio 2019 で開発されている場合は、TypeScript NuGet または TypeScript npm パッケージを使用することをお勧めします。これにより、さまざまなプラットフォームや環境の間で移植性が向上します。 詳細については、NuGet を使用した TypeScript コードのコンパイルtsc を使用した TypeScript コードのコンパイルに関する記事をご覧ください。

プロジェクト

Visual Studio 2019 で、UWP JavaScript アプリはサポートされなくなりました。 JavaScript UWP プロジェクト (拡張子が .jsproj のファイル) は、作成することも、開くこともできません。 詳細については、Windows 上で適切に実行されるプログレッシブ Web アプリ (PWA) の作成に関するドキュメントを参照してください。