npm 的运行机制
npm安装机制和背后的思想
同一个项目团队,应保证npm 版本的一致
![](https://img.haomeiwen.com/i9775552/2af3a54428caa074.png)
构建依赖树是,应该按照扁平化原则,优先放置于node_modules中。
npm 的缓存机制
前端工程中,依赖嵌套依赖,node_modules安装包通过缓存获取。
npm的缓存文件放在.npm根目录下的_cacache中。
可以通过以下命令清楚缓存:
npm cache clean --force
这些缓存如何被存储并利用的?
-
当npm install执行时,通过pacote把相应的包解压在对应的node_modules下面(npm 先下载到缓存中,在解压到node_modules中)。
-
pacote依赖npm-registry-fetch来下载包,在给定的路劲下根据IETF RFC 7234生成缓存数据。
-
在每次安装资源时,根据package-lock.json中存储的integrity、version、name信息生成一个唯一的key。
-
如果发现有缓存资源,就回找到tar包的hash,再次通过pacote把对应的二进制文件解压到相应的项目node_modules下面.
网友评论