npm-install-test

安裝套件並執行測試

選擇 CLI 版本

概要

npm install-test [<package-spec> ...]
alias: it

說明

此指令會執行 npm install,然後立即執行 npm test。它採用與 npm install 完全相同的參數。

設定

儲存

  • 預設值:true,除非使用 npm update,預設值為 false
  • 類型:布林值

將已安裝的套件儲存到 package.json 檔案中,作為依賴項。

npm rm 指令搭配使用時,會從 package.json 中移除依賴項。

如果設定為 false,也會防止寫入 package-lock.json

儲存精確

  • 預設值:false
  • 類型:布林值

儲存在 package.json 中的依賴項會設定為確切版本,而不是使用 npm 預設的 semver 範圍運算子。

全域

  • 預設值:false
  • 類型:布林值

以「全域」模式操作,因此套件會安裝到 prefix 資料夾,而不是目前的作業目錄。請參閱 資料夾,以進一步了解行為差異。

  • 套件會安裝到 {prefix}/lib/node_modules 資料夾,而不是目前的作業目錄。
  • bin 檔案會連結到 {prefix}/bin
  • man 頁面會連結到 {prefix}/share/man

安裝策略

  • 預設值:「hoisted」
  • 類型:「hoisted」、「nested」、「shallow」或「linked」

設定在 node_modules 中安裝套件的策略。hoisted(預設):在頂層安裝非重複的,並在目錄結構中視需要安裝重複的。nested:(以前的 --legacy-bundling)就地安裝,不提升。shallow(以前的 --global-style)僅在頂層安裝直接依賴項。linked:(實驗性)安裝在 node_modules/.store 中,就地連結,未提升。

舊式綑綁

  • 預設值:false
  • 類型:布林值
  • 已棄用:此選項已棄用,建議使用 --install-strategy=nested

不提升 node_modules 中的套件安裝,而是以依賴它們的方式安裝套件。這可能會導致非常深的目錄結構和重複的套件安裝,因為沒有重複資料刪除。設定 --install-strategy=nested

全域樣式

  • 預設值:false
  • 類型:布林值
  • 已棄用:此選項已棄用,建議使用 --install-strategy=shallow

僅在頂層 node_modules 中安裝直接依賴項,但在更深的依賴項中提升。設定 --install-strategy=shallow

略過

  • 預設:如果 NODE_ENV 環境變數設定為「production」,則為「dev」,否則為空。
  • 類型:「dev」、「optional」或「peer」(可以設定多次)

從磁碟上的安裝樹中省略的依賴項類型。

請注意,這些依賴項會解析並新增到 package-lock.jsonnpm-shrinkwrap.json 檔案中。它們只是不會實際安裝在磁碟上。

如果套件類型同時出現在 --include--omit 清單中,則會包含它。

如果產生的省略清單包含 'dev',則會將 NODE_ENV 環境變數設定為 'production',以適用於所有生命週期指令碼。

包含

  • 預設
  • 類型:「prod」、「dev」、「optional」或「peer」(可以設定多次)

允許定義要安裝的依賴項類型的選項。

這是 --omit=<type> 的反向。

--include 中指定的依賴項類型不會被省略,無論在命令列中指定省略/包含的順序為何。

嚴格同儕相依性

  • 預設值:false
  • 類型:布林值

如果設定為 true,並且未設定 --legacy-peer-deps,則任何衝突的 peerDependencies 都會視為安裝失敗,即使 npm 可以根據非對等依賴項關係合理猜測適當的解析方法。

預設情況下,依賴項圖表中深層的衝突 peerDependencies 將使用最近的非對等依賴項規格來解析,即使這樣做會導致某些套件接收超出套件 peerDependencies 物件中設定的範圍的對等依賴項。

當執行此類覆寫時,會列印警告,說明衝突以及所涉及的套件。如果設定 --strict-peer-deps,則此警告會視為失敗。

優先重複刪除

  • 預設值:false
  • 類型:布林值

如果可能,最好重複套件,而不是選擇較新版本的相依性。

套件鎖定

  • 預設值:true
  • 類型:布林值

如果設為 false,則在安裝時忽略 package-lock.json 檔案。如果 save 為 true,這也會防止撰寫 package-lock.json

僅套件鎖定

  • 預設值:false
  • 類型:布林值

如果設為 true,目前的作業只會使用 package-lock.json,忽略 node_modules

對於 update,這表示只會更新 package-lock.json,而不是檢查 node_modules 並下載相依性。

對於 list,這表示輸出將根據 package-lock.json 描述的樹狀結構,而不是 node_modules 的內容。

前景腳本

  • 預設值:false,除非使用 npm packnpm publish,預設值為 true
  • 類型:布林值

執行所有建置指令碼(例如,preinstallinstallpostinstall)指令碼,以在前台處理序中安裝套件,並與主 npm 處理序共用標準輸入、輸出和錯誤。

請注意,這通常會使安裝執行速度變慢,而且會產生更多雜訊,但對於除錯很有用。

忽略腳本

  • 預設值:false
  • 類型:布林值

如果為 true,npm 就不會執行 package.json 檔案中指定的指令碼。

請注意,明確用於執行特定指令碼的命令,例如 npm startnpm stopnpm restartnpm testnpm run-script,如果設定 ignore-scripts,仍會執行其預期的指令碼,但它們不會執行任何前置或後置指令碼。

稽核

  • 預設值:true
  • 類型:布林值

當為「true」時,會將稽核報告與目前的 npm 命令一起提交到預設註冊表和所有為範圍設定的註冊表。請參閱 npm audit 的文件,以取得有關提交內容的詳細資訊。

  • 預設值:true
  • 類型:布林值

指示 npm 為套件可執行檔建立符號連結(或 Windows 上的 .cmd shim)。

設為 false 以不執行此動作。這可用於解決某些檔案系統不支援符號連結的事實,即使在表面上是 Unix 系統也是如此。

資金

  • 預設值:true
  • 類型:布林值

當「true」顯示訊息在每個 npm install 的結尾,確認尋找資金的相依項數量。請參閱 npm fund 以取得詳細資料。

空跑

  • 預設值:false
  • 類型:布林值

表示您不希望 npm 進行任何變更,且它應僅報告它會執行的動作。這可以傳遞到任何修改您本機安裝的指令,例如 installupdatededupeuninstall,以及 packpublish

注意:這不會受到其他網路相關指令的尊重,例如 dist-tagsowner 等。

CPU

  • 預設值:null
  • 類型:null 或字串

覆寫要安裝的原生模組的 CPU 架構。可接受的值與 package.json 的 cpu 欄位相同,來自 process.arch

作業系統

  • 預設值:null
  • 類型:null 或字串

覆寫要安裝的原生模組的作業系統。可接受的值與 package.json 的 os 欄位相同,來自 process.platform

libc

  • 預設值:null
  • 類型:null 或字串

覆寫要安裝的原生模組的 libc。可接受的值與 package.json 的 libc 欄位相同

工作區

  • 預設
  • 類型:字串(可以設定多次)

啟用在當前專案設定的工作空間的背景下執行指令,同時透過僅執行此設定選項定義的工作空間來進行篩選。

workspace 設定的有效值為

  • 工作空間名稱
  • 工作空間目錄的路徑
  • 父工作空間目錄的路徑(將導致選取該資料夾中的所有工作空間)

設定為 npm init 指令時,這可能會設定為尚未存在的資料夾的工作空間,以建立資料夾並將其設定為專案中的全新工作空間。

此值不會匯出到子處理程序的環境。

工作區

  • 預設值:null
  • 類型:null 或布林值

設定為 true 以在所有設定的工作空間的背景下執行指令。

明確設定為 false 將導致 install 等指令完全忽略工作空間。未明確設定時

  • node_modules 樹狀結構上執行的指令(install、update 等)會將工作空間連結到 node_modules 資料夾。- 執行其他動作的指令(test、exec、publish 等)將在根專案上執行,除非workspace 設定中指定一個或多個工作空間。

此值不會匯出到子處理程序的環境。

包含工作區根目錄

  • 預設值:false
  • 類型:布林值

在為指令啟用工作空間時,包含工作空間根目錄。

當為 false 時,透過 workspace 設定指定個別工作區,或透過 workspaces 旗標指定所有工作區,將會導致 npm 僅在指定的工作區上執行,而不在根目錄專案上執行。

此值不會匯出到子處理程序的環境。

  • 預設值:false
  • 類型:布林值

設定時:file: 協定的相依項將會打包並安裝為一般相依項,而不是建立符號連結。此選項對工作區沒有影響。

另請參閱