目錄
npm-uninstall
選取 CLI 版本
概要
npm uninstall [<@scope>/]<pkg>...aliases: unlink, remove, rm, r, un
說明
此命令會解除安裝套件,完全移除 npm 為其安裝的所有內容。
它也會從 dependencies
、devDependencies
、optionalDependencies
和 peerDependencies
物件中移除套件,這些物件位於您的 package.json
中。
此外,如果您有 npm-shrinkwrap.json
或 package-lock.json
,npm 也會更新那些檔案。
--no-save
會告訴 npm 不要從您的 package.json
、npm-shrinkwrap.json
或 package-lock.json
檔案中移除套件。
--save
或 -S
會告訴 npm 從您的 package.json
、npm-shrinkwrap.json
和 package-lock.json
檔案中移除套件。這是預設值,但如果您在 npmrc
檔案中有 save=false
,您可能需要使用這個選項。
在全域模式(即在命令後面加上 -g
或 --global
)中,它會解除安裝目前的套件內容,視為全域套件。在此情況下,--no-save
會被忽略。
範圍是選用的,並遵循 scope
的一般規則。
範例
npm uninstall sax
sax
將不再存在於您的 package.json
、npm-shrinkwrap.json
或 package-lock.json
檔案中。
npm uninstall lodash --no-save
lodash
仍會存在於您的 package.json
、npm-shrinkwrap.json
或 package-lock.json
檔案中。
組態
儲存
- 預設值:
true
,除非使用npm update
,其預設值為false
。 - 類型:布林
將已安裝的套件儲存到 package.json
檔案中,作為相依性。
與 npm rm
命令一起使用時,會從 package.json
中移除相依性。
如果設為 false
,也會防止寫入 package-lock.json
。
全域
- 預設:false
- 類型:布林
在「全域」模式下執行,讓套件安裝到 prefix
資料夾,而不是目前的作業目錄。請參閱 資料夾,以進一步了解行為差異。
- 套件安裝到
{prefix}/lib/node_modules
資料夾,而不是目前的作業目錄。 - bin 檔案連結到
{prefix}/bin
- man 頁面連結到
{prefix}/share/man
工作區
- 預設
- 類型:字串(可以設定多次)
啟用在目前專案設定的工作空間環境中執行命令,同時透過僅執行此設定選項所定義的工作空間進行篩選。
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: 協定相依項會打包並安裝為一般相依項,而不是建立符號連結。此選項對工作空間沒有影響。