Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/16.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 节点模块大小?_Node.js_Reactjs_Npm_Npm Install - Fatal编程技术网

Node.js 节点模块大小?

Node.js 节点模块大小?,node.js,reactjs,npm,npm-install,Node.js,Reactjs,Npm,Npm Install,我真的无法理解在终端npm安装中运行此命令时会发生什么,几秒钟后,我发现node_modules文件夹的大小至少为150MB,有时甚至更大 这对我的网络容量来说太多了,例如,当我下载一部电影时,这不会以那种速度发生,所以我需要了解当我运行这个命令时到底发生了什么 我真的下载了150MB或更大的文件吗?或者npm只是下载一些小文件,然后做一些工作,让它变得那么大 据我所知,它完全下载所有数据,无需后期处理。不过,它确实链接了依赖项,因此最终的大小可能会大一些。据我所知,它完全下载所有数据,无需后期

我真的无法理解在终端
npm安装中运行此命令时会发生什么,几秒钟后,我发现node_modules文件夹的大小至少为150MB,有时甚至更大

这对我的网络容量来说太多了,例如,当我下载一部电影时,这不会以那种速度发生,所以我需要了解当我运行这个命令时到底发生了什么


我真的下载了150MB或更大的文件吗?或者npm只是下载一些小文件,然后做一些工作,让它变得那么大

据我所知,它完全下载所有数据,无需后期处理。不过,它确实链接了依赖项,因此最终的大小可能会大一些。

据我所知,它完全下载所有数据,无需后期处理。但是,它确实链接了依赖项,因此最终的大小可能会大一些。

如果您以前运行过
npm install
(甚至在另一个文件夹/目录中),后续的
npm install
运行可以从本地缓存中获取一些/多个/所有包。发件人:

npm将缓存数据存储在配置的缓存中的不透明目录中,名为_cacache。此目录是一个基于cache的内容寻址缓存,它存储所有http请求数据以及其他与包相关的数据。此目录主要通过pacote访问,pacote是一个库,负责从npm@5.


如果您想强制
npm
通过网络进行性能比较,请删除
node\u modules
目录,运行
npm cache clear
,然后执行
npm install

如果您以前运行过
npm install
,即使在另一个文件夹/目录中,后续的
npm安装
运行可以从本地缓存获取一些/许多/所有包。发件人:

npm将缓存数据存储在配置的缓存中的不透明目录中,名为_cacache。此目录是一个基于cache的内容寻址缓存,它存储所有http请求数据以及其他与包相关的数据。此目录主要通过pacote访问,pacote是一个库,负责从npm@5.


如果您想强制
npm
通过网络进行性能比较,请删除
node\u modules
目录,运行
npm cache clear
,然后执行
npm install

但是,我生活在互联网相对较慢的国家,我无法在5分钟内下载300MB大小的文件,使用npm,我可以在一两分钟内下载相同大小的文件,这让人困惑@CodeEagle你还必须考虑到你下载电影的服务器的延迟可能会慢一些。@PedroLourenço,这只是一个例子,我说的是以我的完全下载速度下载电影,正如我所注意到的,这比npm慢得多。但是,我生活在一个互联网相对较慢的国家,我无法在不到5分钟内下载一个300MB大小的文件,使用npm,我可以在一两分钟内下载相同大小的文件,这让人困惑@CodeEagle您还必须考虑到您下载电影的服务器的延迟可能较慢。@PedroLourenço,这只是一个例子,我说的是以我的完全下载速度下载一部电影,这比npm慢得多,因为我注意到npm会从缓存中安装所有软件包,除非面临cach中不存在或之前未安装的软件包??假设您的package.json提供了最低版本的依赖项,而不是固定到特定版本,我可以想象npm会查询存储库以获取将要使用的最新版本,然后它会检查缓存中的该版本,并且只有在缓存中没有该版本时才从注册表下载。它还可能使用任何满足要求的缓存版本,即使它不是最新版本,但我不确定。因此npm将从缓存安装所有软件包,除非面临cach中不存在或之前未安装的软件包??假设您的package.json提供最低版本的依赖项,而不是固定到特定版本,我可以想象npm会查询存储库以获取将要使用的最新版本,然后它会检查缓存中的该版本,并且只有在缓存中没有该版本时才从注册表下载。它也可能使用任何满足要求的缓存版本,即使它不是最新的,但我不确定这一点。