众所周知,任何npm模块都可以通过运行一个简单的命令安装:npm install <module_name>。

我已经安装了一些我不再使用的模块,我只是想把它们弄掉。我对此有几个问题:

我们是否有任何命令或过程来从根目录卸载一个模块(比如npm uninstall <module_name>) 或者仅仅删除模块文件就可以了? 如果我们保留未使用的模块会对我们有什么影响?


当前回答

好吧,要完整地回答这个问题,有两个方法(例如,我们将已安装的模块称为module1):

在不改变package.json的情况下删除module1: NPM卸载模块1 使用更改包删除module1。并将其从package.json中的依赖项中移除: NPM卸载——保存模块1

注意:为了简化上面提到的命令,你可以用-S代替——save,可以用remove, rm, r, un, unlink代替uninstall

其他回答

最简单的解决方案是:

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

命令就是npm uninstall <name>

Node.js文档https://npmjs.org/doc/有所有你需要知道的npm命令。

本地安装将位于应用程序的node_modules/目录中。如果模块没有引用,这不会影响应用程序。

但是,如果您正在删除一个全局包,那么任何引用它的应用程序都会崩溃。

这里有不同的选择:

NPM卸载<name>从node_modules中删除模块,但不更新package.json

NPM卸载<name>——save也从package.json的依赖项中删除它

npm uninstall <name>——save-dev也从package.json中的devDependencies中删除它

NPM uninstall -g <name>——save也会全局删除它

对于Windows用户-如果你想一次性删除所有安装的Node.js模块:

打开PowerShell窗口 进入node_modules文件夹(cd node_modules) 执行命令- "npm uninstall (Get-ChildItem) "。名称”

它将卸载所有模块。

我只是在我的home目录下默认安装stylus,所以我只是使用npm uninstall stylus来卸载它,或者你可以尝试npm rm <package_name> out。

有时npm uninstall -g packageName不起作用。

在这种情况下,您可以手动删除包。

在Mac上,进入/usr/local/lib/node_modules文件夹,删除包含所需包的文件夹。就是这样。用这个命令检查你的全局安装包列表:

npm list -g --depth=0