Rspack 提供兩種解決方案來支援 React
Rspack 利用 SWC 轉換器處理 JSX/TSX。
新增 builtin:swc-loader
loader 以支援 jsx
和 tsx
詳細設定請參閱 內建 swc-loader。
目前有兩種方法可以在 Rspack 中啟用 React 快速重新整理
首先,您需要安裝 @rspack/plugin-react-refresh 以支援 React 快速重新整理。
啟用 React 快速重新整理 功能主要涉及兩個方面:程式碼注入和程式碼轉換。
react-refresh
套件的一些程式碼,以及一些自訂執行階段程式碼,所有這些程式碼都整合在 @rspack/plugin-react-refresh 外掛中,並且可以透過此外掛注入。與之前的方法相比,此方法將 React 快速重新整理程式碼注入邏輯與轉換邏輯分離。程式碼注入邏輯由 @rspack/plugin-react-refresh 外掛統一處理,而程式碼轉換則由 loader 處理。這表示此外掛可以與 builtin:swc-loader
、swc-loader
或 babel-loader
搭配使用。
builtin:swc-loader
一起使用,您可以參考 examples/react-refresh 中的範例,當與 swc-loader
一起使用時,只需將 builtin:swc-loader
替換為 swc-loader
。babel-loader
一起使用,您可以參考 examples/react-refresh-babel-loader 中的範例。React 編譯器是 React 19 中引入的實驗性編譯器,可以自動最佳化您的 React 程式碼。
在開始使用 React 編譯器之前,建議閱讀 React 編譯器文件,以了解 React 編譯器的功能、目前狀態和用法。
目前,React 編譯器僅支援 Babel 編譯,這可能會減慢建置時間。
在 Rspack 中使用 React 編譯器的步驟
react
和 react-dom
的版本升級到 19。babel-loader
babel.config.js
並設定外掛您可以參考以下範例專案
SVGR 是一個通用工具,用於將可縮放向量圖形 (SVG) 檔案轉換為 React 元件。
SVGR 與 Rspack 的用法與 Webpack 完全相同。
有關 SVGR 的詳細用法,請參閱 SVGR 文件 - webpack。