什麼情況下適合使用 Preact
- 你希望 popup、sidebar、new tab 介面的 UI bundle 更小。
- 你喜歡 React 風格的元件,但想要更輕量的執行期。
- 你正在針對較低階裝置最佳化擴充功能的啟動時間與 UI 反應速度。
範本範例
new-preact

content-preact

在既有擴充功能中使用
依下列步驟把 Preact 加入既有擴充功能。安裝
安裝所需相依套件: Preact 內建自己的 TypeScript 型別,因此你不需要另外安裝@types/preact。
設定
Extension.js 會期待 Preact 檔案採用下列副檔名:- 未啟用 TypeScript 時:
*.jsx - 啟用 TypeScript 時:
*.tsx
開發行為
當 Extension.js 偵測到 Preact 時,會設定:- 相容別名(例如
react→preact/compat)。 - 為 Preact 調整過的 JSX 處理方式。
- 開發階段透過
@rspack/plugin-preact-refresh整合 refresh。
疑難排解
- 缺少 refresh 相依套件的警告: 安裝
@rspack/plugin-preact-refresh(如果提示,請一併安裝相關套件)。 - 安裝後要求重新啟動: 停止並重新執行
extension dev,讓 dev server 可以乾淨地重新載入 refresh 設定。 - 未偵測到 Preact 整合: 確認
preact已出現在dependencies或devDependencies中。
使用範例
在 new tab 擴充功能中
在 new tab 擴充功能中使用 Preact,請在 HTML 中以<script> 引入:
在 content_script 檔中
對於 content script,建立 HTML 元素並把 Preact 渲染進去:
下一步
- 進一步了解 TypeScript 支援。
- 探索 Extension.js 如何處理 Sass modules。

