本文翻译自:How to uninstall npm modules in node js?
As commonly known, any npm module can be installed by running a simple command: npm install <module_name> . 众所周知,可以通过运行一个简单的命令来安装任何npm模块: npm install <module_name> 。
I have installed a few modules that I do not use anymore and I just want to get them off. 我已经安装了一些不再使用的模块,我只想把它们取下来。 I have a few questions regarding this: 我对此有一些疑问:
Do we have any command or process to uninstall a module from the root (something like
npm uninstall <module_name>) or will simply removing the module files do? 我们是否有任何命令或过程从根目录卸载模块(类似于npm uninstall <module_name>),还是只是删除模块文件呢?How does it affect us if we keep the unused modules? 如果我们保留未使用的模块,它将对我们有何影响?
#1楼
参考:https://stackoom.com/question/spCW/如何在Node-JS中卸载NPM模块
#2楼
The command is simply npm uninstall <name> 该命令只是npm uninstall <name>
The nodejs documents https://npmjs.org/doc/ have all the commands that you need to know with npm. nodejs文档https://npmjs.org/doc/具有npm需要了解的所有命令。
A local install will be in the node_modules/ directory of your application. 本地安装将在应用程序的node_modules/目录中。 This won't affect the application if a module remains there with no references to it. 如果模块保留在那里而没有引用,则这不会影响应用程序。
If you're removing a global package however, any applications referencing it will crash. 但是,如果要删除全局软件包,则引用该全局软件包的所有应用程序都将崩溃。
Here are different options: 这是不同的选项:
npm uninstall <name> removes the module from node_modules , but not package.json npm uninstall <name>将从node_modules删除模块,但不会从package.json删除
npm uninstall <name> --save also removes it from dependencies in package.json npm uninstall <name> --save还将其从package.json dependencies中删除
npm uninstall <name> --save-dev also removes it from devDependencies in package.json npm uninstall <name> --save-dev还将其从package.json devDependencies中删除
npm -g uninstall <name> --save also removes it globally npm -g uninstall <name> --save也将其全局删除
#3楼
我只是默认情况下在我的主目录下安装手写笔 ,所以我只使用npm uninstall stylus将其分离,或者您可以尝试使用npm rm <package_name>退出。
#4楼
If it doesn't work with npm uninstall <module_name> try it globally by typing -g . 如果它不能与npm uninstall <module_name>一起npm uninstall <module_name>并通过-g全局尝试。
Maybe you just need to do it as an superUser/administrator with sudo npm uninstall <module_name> . 也许您只需要以sudo npm uninstall <module_name> install sudo npm uninstall <module_name>的超级用户/管理员身份进行操作即可。
#5楼
Well to give a complete answer to this question, there are two methods : (for example we call the installed module as module1) 为了完全回答这个问题,有两种方法 :(例如,我们将已安装的模块称为module1)。
To remove module1 without changing package.json: 要在不更改package.json的情况下删除module1:
npm uninstall module1To remove module1 with changing package.json, and removing it from the dependencies in package.json: 要通过更改package.json来删除module1,并将其从package.json中的依赖项中删除,请执行以下操作:
npm uninstall --save module1
Note: to simplify the above mentioned commands, you can use -S instead of --save , and can use remove , rm , r , un , unlink instead of uninstall 注意:为简化上述命令,可以使用-S代替--save ,并且可以使用remove , rm , r , un , unlink而不是uninstall
#6楼
I found this out the hard way, even if it is seemingly obvious. 即使看起来很明显,我也很难做到这一点。
I initially tried to loop through the node_modules directory running npm uninstall module-name with a simple for loop in a script. 我最初尝试在脚本中使用简单的for循环遍历运行npm uninstall module-name的node_modules目录。 I found out it will not work if you call the full path, eg 我发现如果您调用完整路径,它将无法正常工作,例如
npm uninstall module-name
was working, but 在工作,但是
npm uninstall /full/path/to/node_modules/module-name
was not working. 没有工作。