TypeScriptのサポートは、builtin:swc-loader
を介して有効にすることができます。
最高の速度を実現するために、builtin:swc-loader
は型チェックを実行せずにTypeScriptのソースコードをトランスパイルします。型チェックには、tsc
などの外部ツールを使用する必要があります。
並列処理を最大化するために、builtin:swc-loader
は各モジュールを個別にトランスパイルします。これには、tscによるソースコードの型チェックを確実にするために、TypeScriptの設定でisolatedModules
を有効にする必要があります。const enumなど、一部の言語機能はプロジェクト全体の解析に依存しているため、isolatedModulesによるトランスパイルでは使用できません。 tsconfig.json
ファイルでisolatedModules
を有効にして、IDEのヒントと型チェッカーがRspackのモジュール処理の動作を正確に反映するようにしてください。
fork-ts-checker-webpack-pluginを使用して、コンパイル中にTypeScriptの型チェックを実行できます。ただし、TypeScriptの型チェックは、特に大規模なプロジェクトでは時間がかかる場合があることに注意してください。これは、型チェックに必要な時間がRspack自体のビルド時間よりも長くなる可能性があることを意味します。
開発モードでプラグインを使用している場合、ビルドはブロックされず、ビルドプロセスを続行できます。ただし、ビルドモードでは、型チェックが完了するまでプラグインがビルドをブロックするため、ビルド時間が長くなる可能性があります。
実際のニーズに基づいて、このプラグインを有効にするかどうかを決定する必要があります。型チェックプロセスがビルドプロセスのボトルネックになっている場合は、TypeScriptのインクリメンタルビルド機能を使用することをお勧めします。この機能は、最後のビルド以降に変更されたファイルのみを分析することにより、型チェックプロセスを大幅に高速化できます。
TypeScriptのインクリメンタルビルドを有効にするには、tsc --incremental
を単独で使用するか、プラグインでインクリメンタルモードを有効にすることができます。
インクリメンタルビルドを有効にすることで、特に変更されたファイルが少ない場合に、型チェックの時間を短縮できます。これにより、型チェックの利点を犠牲にすることなく、ビルドプロセスを最適化できます。
特定のプロジェクトにおけるビルド速度と型チェックの精度のトレードオフを評価し、それに応じて最適なアプローチを選択してください。
TSX|JSXのサポートは、builtin:swc-loader
を介して有効にすることができます。
詳細は、resolve.tsConfigを参照してください。
import.meta.webpackContextなど、webpackまたはRspack固有の機能の型をTypeScriptコードで使用できます。
Rspackは、@rspack/core/module
を介してクライアントモジュール型を提供します。さまざまな方法で宣言できます。
TypeScript参照ディレクティブを追加して宣言する
グローバルd.ts宣言ファイルに次のコンテンツを追加します
その後、任意のTypeScriptファイルで使用できます
また、tsconfig.jsonのtypes
フィールドに@rspack/core/module
を追加することもできます。詳細は、tsconfig typesドキュメントを参照してください。