Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js npm uninstall从package.json中删除包,但不会';t将其从node_modules文件夹中删除_Node.js_Angular_Npm_Angular5 - Fatal编程技术网

Node.js npm uninstall从package.json中删除包,但不会';t将其从node_modules文件夹中删除

Node.js npm uninstall从package.json中删除包,但不会';t将其从node_modules文件夹中删除,node.js,angular,npm,angular5,Node.js,Angular,Npm,Angular5,我已尝试使用删除包 npm uninstall (package_name) -s 它从package.json中删除了包,但没有从node_modules文件夹中删除,那么如何从node_modules文件夹中删除这些未使用的包 编辑: 当我面对这个问题时,我分享了这个问答,我使用了npm uninstall的所有变体,但它没有从节点模块中删除包,所以我分享了帮助我删除10个未使用的包的内容,这些包是npm prune,npm uninstall只从依赖项中删除包,它不会从节点_模块中删除

我已尝试使用删除包

npm uninstall (package_name) -s 
它从package.json中删除了包,但没有从node_modules文件夹中删除,那么如何从node_modules文件夹中删除这些未使用的包

编辑:

当我面对这个问题时,我分享了这个问答,我使用了npm uninstall的所有变体,但它没有从节点模块中删除包,所以我分享了帮助我删除10个未使用的包的内容,这些包是npm prune,npm uninstall只从依赖项中删除包,它不会从节点_模块中删除程序包文件夹(说明中未提及)

出于某种原因,我认为npm卸载也会从node_模块中删除包文件夹,但这没有发生,经过一些研究,我发现我们应该使用

npm prune
此命令将根据自动从节点_模块中删除未使用的包

npm卸载只会从您的系统中删除该包 package.json文件,但它不会从节点_模块中删除该包


我喜欢分享我在从我的项目中卸载软件包的过程中遇到的困难。我相信这可能会增加上述答案的价值

我在我的一个项目中评估了一个名为
react router
的包。后来我决定把它去掉。 我想先删除包,然后从代码中删除它的引用。 我尝试了
npm卸载
npm删减
。但是,在这两种情况下,它都无法从我的
节点模块
文件夹中删除包。 我从代码中删除了
react router
的引用,然后重试。我仍然无法用上面的命令删除它。 经过一些挖掘,我发现我还安装了使用包
react-router
react-router dom
。因此,我必须首先使用上面的命令删除它。只有在那时,我才能删除
react路由器


我觉得奇怪的是,
npm uninstall
没有删除引用的包。我想如果允许的话,我不必通过在类中搜索包来手动查找包的用法,而IDE/Lint可以帮助我更轻松地找到它。

它应该将其从node_模块中删除。它没有在我的机器上删除&我搜索了一段时间,直到找到了这个解决方案,可以在不手动删除folderok的情况下删除未使用的依赖项,对于npm初学者来说,不清楚npm卸载是否不会从node_modules文件夹中删除,即使在npm prune的文档中,它使用的描述并不简单,我花了大约半个小时才知道为什么npm卸载没有删除它,甚至从这里的其他评论者那里,他似乎也有同样的想法(npm卸载将删除包文件夹)这非常有用,我想知道为什么会有没有澄清的否决票:)npm prune不适用于我,npm uninstall(package_name)-s这是有效的npm prune不适用于全局包,因为没有package.json文件。我找不到解决方案,npm uninstall-g不会删除node_模块中的包文件夹。然后,npm list-g--depth 0显示了一些错误,因为找到的是文件夹而不是package.json文件(文件夹仍然存在,但它是空的)