目录
npm-uninstall
选择 CLI 版本
目录
概要
npm uninstall [<@scope>/]<pkg>...aliases: unlink, remove, rm, r, un
描述
这将卸载一个包,完全删除 npm 为其安装的所有内容。
它还会从您的 package.json
中的 dependencies
、devDependencies
、optionalDependencies
和 peerDependencies
对象中移除该包。
此外,如果您有 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
- 手册页将链接到
{prefix}/share/man
工作区
- 默认值
- 类型:字符串(可以设置多次)
启用在当前项目的配置工作区上下文中运行命令,同时通过仅运行此配置选项定义的工作区来过滤。
针对 workspace
配置的有效值是
- 工作区名称
- 工作区目录的路径
- 父工作区目录的路径(将导致选择该文件夹中的所有工作区)
当针对 npm init
命令设置时,这可以设置为尚未存在的工作区文件夹,以创建该文件夹并将其设置为项目中的一个全新工作区。
此值不会导出到子进程的环境中。
工作区
- 默认值:null
- 类型:null 或布尔值
设置为 true 以在**所有**配置的工作区上下文中运行命令。
显式将其设置为 false 将导致 install
等命令完全忽略工作区。当未显式设置时
- 对
node_modules
树进行操作的命令(install、update 等)将链接工作区到node_modules
文件夹中。- 其他操作的命令(test、exec、publish 等)将在根项目上运行,除非workspace
配置中指定了一个或多个工作区。
此值不会导出到子进程的环境中。
include-workspace-root
- 默认值:false
- 类型:布尔值
在启用工作区以进行命令时包含工作区根目录。
当为 false 时,通过 workspace
配置指定单个工作区,或通过 workspaces
标志指定所有工作区,将导致 npm 仅在指定的工作区上运行,而不是在根项目上运行。
此值不会导出到子进程的环境中。
install-links
- 默认值:false
- 类型:布尔值
当设置为 file: 协议依赖项时,将打包和安装为常规依赖项,而不是创建符号链接。此选项对工作区没有影响。