CLI

parcel CLI 是使用 Parcel 最常見的方式。它支援三個不同的指令:servewatchbuild

parcel [serve] <entries>

#

serve 指令會啟動一個開發伺服器,當你變更檔案時,它會自動重新建置你的應用程式,並支援 熱重新載入。它接受一個或多個檔案路徑或 glob 作為 entriesserve 是預設指令,因此也可以透過直接傳遞 entries 給 parcel 來使用。

parcel src/index.html

注意:如果你指定了多個 HTML 進入點,且其中沒有任何一個的輸出路徑為 /index.html,開發伺服器會以 404 回應 http://localhost:1234/,因為 Parcel 不知道哪個 HTML 捆綁包是索引。

在這種情況下,直接載入檔案,例如 http://localhost:1234/a.htmlhttp://localhost:1234/b.html

有關更多詳細資訊,請參閱 開發

parcel watch <entries>

#

watch 指令類似於 serve,但不會啟動開發伺服器(只會啟動 HMR 伺服器)。不過,它會在您進行變更時自動重新建置您的應用程式,並支援 熱重載。如果您正在建置函式庫、後端,或有自己的開發(HTTP)伺服器,請使用 watch。請參閱 下方 以瞭解如何指定輸入。

parcel watch src/index.html

parcel build <entries>

#

build 指令執行單一製作建置並結束。這會預設啟用 範圍提升 和其他製作最佳化。請參閱 下方 以瞭解如何指定輸入。

parcel build src/index.html

請參閱 製作 以取得更多詳細資訊。

輸入

#

所有 Parcel 指令都接受一個或多個輸入。輸入可能是相對或絕對路徑,或 glob。它們也可能是包含具有 source 欄位的 package.json 的目錄。如果完全省略輸入,則會使用目前工作目錄中的 package.json 中的 source 欄位。請參閱目標文件中的 輸入 以取得更多詳細資訊。

注意:請務必將 glob 包在單引號中,以確保它們不會由您的 shell 解析,並直接傳遞給 Parcel。這可確保 Parcel 能自動擷取與 glob 相符的新建立檔案,而無需重新啟動。

# Single file
parcel src/index.html

# Multiple files
parcel src/a.html src/b.html

# Glob (quotes required)
parcel 'src/*.html'

# Directory with package.json#source
parcel packages/frontend

# Multiple packages with a glob
parcel 'packages/*'

# Current directory with package.json#source
parcel

參數

#

所有 Parcel 指令都支援這些參數。

格式 說明
--target [name] 指定要建置的目標。可以多次指定。請參閱 目標
--dist-dir <dir> 當目標未指定時,要寫入的輸出目錄。
package.json targetsdistDir 選項的預設值。
--public-url <網址> 絕對網址的路徑前綴。
package.json targetspublicUrl 選項的預設值。
--no-source-maps 停用原始碼對應,
覆寫 package.json targets 中的 sourceMap 選項。
--config <路徑> 指定要使用的 Parcel 組態。
可以是檔案路徑或套件名稱。預設為 @parcel/config-default。請參閱 Parcel 組態
--reporter <套件名稱> 除了在 .parcelrc 中指定的套件外,執行指定的報告器外掛程式。可以多次指定。
--log-level (none/error/warn/info/verbose) 設定記錄層級。
--cache-dir <路徑> 設定快取目錄。預設為 .parcel-cache。請參閱 快取
--no-cache 停用從檔案系統快取中讀取。請參閱 快取
--profile 在建置期間執行 CPU 取樣分析(可以產生火焰圖)。
--trace 在建置期間執行 追蹤
-V, --version 輸出版本號碼。

特定於 servewatch 的參數

#
格式 說明
-p, --port <埠號> 開發伺服器和 HMR 的埠號(預設埠號為 process.env.PORT 或 1234)。請參閱 開發伺服器
--host <主機> 設定要監聽的主機,預設為監聽所有介面。
--https 透過 HTTPS 執行開發伺服器和 HMR 伺服器。
--cert <路徑> 要使用的憑證路徑。請參閱 HTTPS
--key <路徑> 要使用的私密金鑰路徑。請參閱 HTTPS
--no-hmr 停用 熱重載
--hmr-port <埠號> HMR 伺服器的埠號(預設為開發伺服器的埠號)。請參閱 熱重載
--hmr-host <主機> HMR 伺服器的主機(預設為開發伺服器的主機)。請參閱 熱重載
--no-autoinstall 停用 自動安裝
--watch-dir 設定根目錄監控目錄。對於在子專案中有鎖定檔案的單一儲存庫很有用。
--watch-for-stdin 在 stdin 關閉後停止 Parcel。

特定於 serve 的參數

#
格式 說明
--open [瀏覽器] 自動在瀏覽器中開啟項目。預設為預設瀏覽器。請參閱 開發伺服器
--lazy 僅建置開發伺服器要求的套件。請參閱 懶惰模式

特定於 build 的參數

#
格式 說明
--no-optimize 停用最佳化,例如縮小化。
覆寫 package.json targetsoptimize 選項。請參閱 生產
--no-scope-hoist 停用範圍提升。
覆寫 package.json targetsscopeHoist 選項。請參閱 範圍提升
--no-content-hash 停用輸出檔名的內容雜湊。
套件名稱可能仍包含雜湊,但它們不會在每次建置時變更。請參閱 內容雜湊
--detailed-report [深度] 在 CLI 報告中顯示每個套件中最大的 10 個資產(可使用 depth 設定數量)。請參閱 詳細報告