众所周知,任何npm模块都可以通过运行一个简单的命令安装:npm install <module_name>。
我已经安装了一些我不再使用的模块,我只是想把它们弄掉。我对此有几个问题:
我们是否有任何命令或过程来从根目录卸载一个模块(比如npm uninstall <module_name>) 或者仅仅删除模块文件就可以了? 如果我们保留未使用的模块会对我们有什么影响?
众所周知,任何npm模块都可以通过运行一个简单的命令安装:npm install <module_name>。
我已经安装了一些我不再使用的模块,我只是想把它们弄掉。我对此有几个问题:
我们是否有任何命令或过程来从根目录卸载一个模块(比如npm uninstall <module_name>) 或者仅仅删除模块文件就可以了? 如果我们保留未使用的模块会对我们有什么影响?
当前回答
如果你想用npm卸载一个特定的包, 可以使用如下命令:
辛塔克斯:
npm uninstall <package-name>
例子:
npm uninstall moment
其他回答
有时npm uninstall -g packageName不起作用。
在这种情况下,您可以手动删除包。
在Mac上,进入/usr/local/lib/node_modules文件夹,删除包含所需包的文件夹。就是这样。用这个命令检查你的全局安装包列表:
npm list -g --depth=0
我只是在我的home目录下默认安装stylus,所以我只是使用npm uninstall stylus来卸载它,或者你可以尝试npm rm <package_name> out。
npm 5的更新:
从npm 5.0.0开始,默认情况下,已安装/已卸载的模块将作为依赖项添加/删除,因此不再需要——save选项。
Run
npm uninstall <package>
例如:
npm uninstall mongodb
它将从node_modules文件夹中删除模块和包。json文件。
如果它不能与npm uninstall <module_name>一起工作,请输入-g全局尝试它。
也许你只需要以超级用户/管理员的身份使用sudo npm uninstall <module_name>。
我发现这一点很艰难,即使它看起来很明显。
我最初尝试在脚本中使用一个简单的for循环运行npm uninstall module-name遍历node_modules目录。我发现它不会工作,如果你调用完整的路径,例如,
npm uninstall module-name
在工作,但是
npm uninstall /full/path/to/node_modules/module-name
没有工作。