啟用 TypeScript 支援可以透過 builtin:swc-loader
完成。
為了達到最快速度,builtin:swc-loader
會轉譯 TypeScript 原始碼,而不執行任何類型檢查。必須使用外部工具(例如 tsc
)進行類型檢查。
為了最大化平行處理,builtin:swc-loader
將會單獨轉譯每個模組。這需要您在 TypeScript 設定中啟用 isolatedModules
,以確保 tsc 對原始碼進行類型檢查。某些語言特性(例如 const enums)依賴於解析整個專案,因此無法與隔離模組轉譯一起使用。請在您的 tsconfig.json
檔案中啟用 isolatedModules
,以確保您的 IDE 提示和類型檢查器能夠準確反映 Rspack 的模組處理行為。
您可以使用 fork-ts-checker-webpack-plugin 在編譯期間執行 TypeScript 類型檢查。但是,請務必注意,TypeScript 的類型檢查可能相當耗時,尤其是在較大型的專案中。這表示類型檢查所需的時間可能會超過 Rspack 本身的建置時間。
如果您在開發模式中使用此插件,它不會阻擋建置,您可以繼續進行建置過程。但是,在建置模式中,此插件會阻擋建置,直到類型檢查完成,這可能會導致更長的建置時間。
根據您的實際需求,您應該決定是否啟用此插件。如果類型檢查過程成為您建置過程中的瓶頸,我們建議您使用 TypeScript 的增量建置功能。此功能可以透過僅分析自上次建置以來變更的檔案,大幅加快類型檢查過程。
若要啟用 TypeScript 的增量建置,您可以獨立使用 tsc --incremental
或在插件中啟用增量模式。
啟用增量建置可以幫助減少類型檢查時間,尤其是在僅修改少數檔案時。這樣一來,您就可以在不犧牲類型檢查優點的情況下,最佳化您的建置過程。
請記得評估您特定專案中建置速度與類型檢查準確性之間的權衡,並據此選擇最佳方法。
啟用 TSX|JSX 支援可以透過 builtin:swc-loader
完成。
詳細資訊請參閱 resolve.tsConfig。
您可以在 TypeScript 程式碼中使用 webpack 或 Rspack 特定功能的類型,例如 import.meta.webpackContext。
Rspack 透過 @rspack/core/module
提供用戶端模組類型,您可以使用不同的方式宣告它們
新增 TypeScript 參考指令以宣告
將以下內容新增至全域 d.ts 宣告檔案
然後,它可以在任何 TypeScript 檔案中使用
您也可以將 @rspack/core/module
新增至 tsconfig.json 的 types
欄位。您可以參考 tsconfig types 文件 以取得更多詳細資訊。