選擇合適的目標
| 目標 | 適用情境 | 範例 |
|---|---|---|
chromium | 預設、快速的本機開發 | extension dev --browser=chromium |
chrome | 驗證 Chrome 特有行為 | extension dev --browser=chrome |
edge | 驗證 Edge 的散布行為 | extension dev --browser=edge |
firefox | 驗證 Gecko 相容性與 API | extension dev --browser=firefox |
chrome,firefox | 同時對兩大引擎進行發布前檢查 | extension build --browser=chrome,firefox |
chromium-based | 執行自訂 Chromium 執行檔(Brave、Arc 等) | extension dev --browser=chromium-based --chromium-binary=/path/to/browser |
gecko-based | 執行自訂 Firefox 系列的執行檔 | extension dev --browser=gecko-based --gecko-binary=/path/to/browser |
safari | 在 macOS 上建置 Safari 應用程式(需 Xcode) | extension build --browser=safari |
運作方式
在dev、start、preview 與 build 中使用 --browser 來選擇目標。
如果沒指定瀏覽器,CLI 預設使用 chromium。
safari(以及它的 webkit-based 別名)是例外:它是 alpha、僅限 macOS 的建置目標,只支援 build 與 dev,不支援 preview 或 start。請參見 建置 Safari 擴充功能。
支援的瀏覽器
具名瀏覽器目標:| 瀏覽器 | 用法 |
|---|---|
| Chrome | npx extension dev --browser=chrome |
| Edge | npx extension dev --browser=edge |
| Firefox | npx extension dev --browser=firefox |
| Chromium | npx extension dev --browser=chromium |
| 引擎目標 | 用法 |
|---|---|
| Chromium-based | npx extension dev --browser=chromium-based --chromium-binary=/path/to/browser |
Gecko-based(firefox-based) | npx extension dev --browser=gecko-based --gecko-binary=/path/to/browser |
firefox-based 視為 Gecko 引擎目標。
Safari 與其他 WebKit 目標
除了 Chromium 系列與 Firefox(Gecko 引擎),Extension.js 也能在 macOS 上把你的擴充功能建置成 Safari 應用程式。| 目標 | 用法 |
|---|---|
| Safari | npx extension build --browser=safari |
| WebKit-based(引擎別名) | npx extension build --browser=webkit-based |
build 與 dev,不支援 preview 與 start(Safari 擴充功能無法自動載入到執行中的瀏覽器)。它需要 macOS 與完整的 Xcode 應用程式。完整流程、需求,以及如何在 Safari 中啟用該擴充功能,請參見 建置 Safari 擴充功能。
多瀏覽器選擇
你可以在一個指令中執行多個具名瀏覽器:--browser=chrome,edge,firefox)。
限制與行為
chromium-based需要--chromium-binary。gecko-based/firefox-based需要--gecko-binary。- 引擎類型目標會路由到同樣的 Chromium/Firefox 啟動器,但行為會依引擎調整。
最佳實務
- 日常迭代用具名瀏覽器:
chrome、edge與firefox是日常測試最快的路徑。 - 有意識地使用引擎類型模式:只在驗證自訂執行檔時才用
chromium-based/gecko-based。 - 每個瀏覽器保持設定檔隔離:除錯時減少跨瀏覽器的狀態洩漏。
- 搭配瀏覽器專屬欄位:用瀏覽器前綴的 manifest 鍵表達真正不同的行為。

