众所周知,任何npm模块都可以通过运行一个简单的命令安装:npm install <module_name>。
我已经安装了一些我不再使用的模块,我只是想把它们弄掉。我对此有几个问题:
我们是否有任何命令或过程来从根目录卸载一个模块(比如npm uninstall <module_name>) 或者仅仅删除模块文件就可以了? 如果我们保留未使用的模块会对我们有什么影响?
众所周知,任何npm模块都可以通过运行一个简单的命令安装:npm install <module_name>。
我已经安装了一些我不再使用的模块,我只是想把它们弄掉。我对此有几个问题:
我们是否有任何命令或过程来从根目录卸载一个模块(比如npm uninstall <module_name>) 或者仅仅删除模块文件就可以了? 如果我们保留未使用的模块会对我们有什么影响?
当前回答
卸载Node.js模块:
npm uninstall <module_name>
这将从node_modules文件夹中删除模块,但不会从package.json文件中删除模块。所以当我们再次执行npm install时,它会下载这个模块。
从文件包中删除模块。json,使用:
npm uninstall <module_name> --save
这也会从package.json文件中删除依赖项。
如果你想卸载任何你可以使用的全局模块:
npm -g uninstall <module_name> --save
这将全局删除依赖项。
其他回答
要使用npm卸载一个模块,你可以使用:
npm uninstall moduleName
此外,如果您希望卸载并希望更改反映在您的包中。Json,然后你可以使用——save标志,像这样:
npm uninstall moduleName --save
OR
npm uninstall -S
如果你想从devDependencies中卸载一个模块,并希望更改反映在包中。json,然后你可以使用-D标志,像这样:
npm uninstall moduleName -D
要批量删除node_modules文件夹中的包,也可以从文件package中删除它们。Json,保存它,然后在终端运行NPM prune。
这将删除那些存在于文件系统中,但在package.json文件中没有使用/声明的包。
附注:这在Windows上特别有用,因为您可能经常遇到由于“超过路径长度限制”而无法删除某些文件的问题。
npm 5的更新:
从npm 5.0.0开始,默认情况下,已安装/已卸载的模块将作为依赖项添加/删除,因此不再需要——save选项。
Run
npm uninstall <package>
例如:
npm uninstall mongodb
它将从node_modules文件夹中删除模块和包。json文件。
对于Windows用户-如果你想一次性删除所有安装的Node.js模块:
打开PowerShell窗口 进入node_modules文件夹(cd node_modules) 执行命令- "npm uninstall (Get-ChildItem) "。名称”
它将卸载所有模块。
最简单的解决方案是:
npm uninstall packageName --save-dev
查看项目中的高级包名称:
npm list --depth=0
输出如下:
app@0.1.0 /home/jackkobec/projects/myAppName
├── packageName@packageVersion
├── express@4.16.4
拷贝包名,执行npm uninstall命令。例如,快递包裹:
npm uninstall express --save-dev