跳到主要内容

npm install

2024年07月30日
柏拉文
越努力,越幸运

一、认识


Preview
  1. npm install 先检测是否有 package-lock.json 文件

  2. 如果没有package-lock.json文件:

    • 分析依赖关系,这是因为我们可能包会依赖其他的包,并且多个包之间会产生相同依赖的情况;

    • registry仓库中下载压缩包(如果我们设置了镜像,那么会从镜像服务器下载压缩包);

    • 获取到压缩包后会对压缩包进行缓存(从npm5开始有的, npm config get cache 可以查看地址)

    • 将压缩包解压到项目的node_modules文件夹中

  3. 如果有package-lock.json文件:

    • 检测lock中包的版本是否和package.json中一致

    • 如果不一致: 那么会重新构建依赖关系,直接会走上面的流程;

    • 如果一致: 会去优先查找缓存

      • 缓存没有找到,从 registry 仓库下载,直接走上面流程;

      • 命中缓存会获取缓存中的压缩文件

    • 将压缩文件解压到node_modules文件夹中