package.json和package-lock.json的区别
package.json是npm init 时生成的。
主要作用是描述项目以及项目所依赖的模块信息。
package-lock.json是在运行npm install时生成的一份文件。用以记录当前状态下实际安装的各个npm 包的具体来源和版本号。
主要作用是用来描述node_modules文件中所有模块的版本信息、模块来源以及依赖的小版本信息。
当版本升级,使用npm install命令时,会安装package.json中指定的大版本的最新版本。
为什么有了package.json,还需要package-lock.json文件呢,当node_modules文件夹并不存在或被删除时,需要用到npm install重新装载全部依赖时,通过package-lock.json可以直接表明下载地址和相关依赖,相对下载速度也更快,也不容易报错。