npm 5 以前是不会有package-lock.json
这个文件的
npm 5 以后才加入了这个文件。
当你安装包的时候,npm 都会生成或者更新package-lock.json这个文件
- npm5以后的版本安装包不需要加
--save
参数,它会自动保存依赖信息到package.json
-
package-lock.json
这个文件会保存node_modules
中所有包的信息(版本、下载地址)- 这样的话重新
npm install
的时候速度可提升 -
package-lock.json
的另一个作用就是锁定版本号,防止自动升级新版本
- 这样的话重新
package.json中^,~的区别
指定版本号
(1)指定版本:比如"classnames": "2.2.5",表示安装2.2.5的版本
(2)波浪号~
加指定版本:比如 "babel-plugin-import": "~1.1.0",表示安装1.1.x的最新版本(不低于1.1.0),但是不安装1.2.x,也就是说安装时不改变大版本号和次要版本号
(3)^
加指定版本:比如 "antd": "^3.1.4",,表示安装3.1.4及以上的版本,但是不安装4.0.0,也就是说安装时不改变大版本号。