首页 前端知识 理解 npm i 之后都干了啥

理解 npm i 之后都干了啥

2024-05-14 23:05:30 前端知识 前端哥 742 833 我要收藏

npm i 是 npm 的一个命令,用于安装指定的模块和它们的依赖。

运行 npm i 命令之后,它会在当前目录下的 node_modules 文件夹中安装所有需要的依赖项及其子依赖项。如果 package.json 文件存在且包含了依赖列表,npm i 还会将所需的包版本号记录在 package.json 文件中。

初次执行 npm i 命令之后,会进行以下步骤:

  1. 检查 package.json 文件是否存在,如果不存在,则创建一个空的 package.json 文件;
  2. 解析 package.json 文件中的 dependencies 和 devDependencies 字段,确定需要安装的依赖项及版本号;
  3. 从 npm 服务器下载目标包和相关依赖,存储到本地的 node_modules 目录中;
  4. 如果依赖项中有其他依赖,npm 会递归下载安装它们;
  5. 安装完成后,npm 会将所有的依赖写入 package.json 文件中。

在已有的node_modules项目中执行npm i 命令之后,更新项目的node_modules的配置,会进行一下命令:

  1. 从项目package.lock.json中查看依赖版本的integrity属性,比对是否跟本地版本一致,
    如果一致,就跳过这个包的安装如果不一致走2
  2. 参考package.json中包的版本,然后根据语义化版本更新机制,去下载合适的新版本
    更新package.lock.json配置
  3. 如果依赖包的版本有更新,我们在新下载到的依赖包的package.json中会看到两个字段
    from和id,from就标识我们项目文件中配置的包版本,id标识当前下载到的包版本
    语义化版本不会跟新到大版本,需要手动更新
  4. npm i xxx@2.0.0 或者 npm i xxx@latest 会更新到大版本,同时修改项目package.json中的依赖包版本
  5. 项目中新安装到的依赖包版本,默认都会以^开头
  6. package.lock.json中会锁定项目依赖包中的依赖包的具体版本

由上可知,package.lock.json 是根据 package.json 生成的,所以当你更新依赖或者新加了某个依赖的时候,请务必记得提交package.json 文件!!!

通过执行 npm i 命令,可以方便地安装所需的依赖,避免手动下载和安装模块的繁琐操作。

原文链接:https://blog.csdn.net/xiaoxia_127/article/details/108380604

转载请注明出处或者链接地址:https://www.qianduange.cn//article/8696.html
标签
评论
发布的文章

video 自定义视频播放控件

2024-05-26 01:05:25

HTML5 画布绘制海报

2024-05-26 01:05:13

HTML5学习(三)

2024-05-26 01:05:43

大家推荐的文章
会员中心 联系我 留言建议 回顶部
复制成功!