package.json 和 package-lock.json 的作用

530 阅读1分钟

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

package.json 和 package-lock.json 作用分析

在我们前端工程项目中,一般都会有一个package.json 和 package-lock.json文件,那么这两个文件的作用都是什么呢,下面对这两个文件作用进行相关描述:

  1. package.json 该文件里记录了本项目所需要安装的所有依赖项,当项目中的 node_modules文件被删除的时候,可以再根据该文件允许npm install 等相关安装依赖的命令安装所需的相关依赖项;
  2. npm 5 以前不会有 package-lock.json 这个文件,npm5 之后才加入这个文件;
  3. 当安装依赖包的时候,npm 都会生成或者更新  package-lock.json 这个文件;
  4. npm 5 之后的版本安装包的时候不需要加 --save 参数,它会自动保存依赖的信息;
  5. 当安装包的时候,会自动创建或者更新 package-lock.json 文件;
  6. package-lock.json 文件会保存 node_modules 中所有包的相关信息(比如版本、下载地址等),重新 npm install 的时候速度会有一定的提升;
  7. 该文件的名称有 lock 字段,这表示该文件可以用来锁定版本号,防止自动升级新的版本。

注意: package.json和package-lock.json保证了大家在协同开发的时候所用的依赖模块版本是一致的。当你的项目新增了一个依赖模块请一定要把package.json和package-lock.json一起上传,这样别人下载项目的时候去更新模块信息,就能得到和你一模一样的模块,保证了项目的正常运行。