什么是npm?
npm代表Node Package Manager(Node包管理器),它是一个用于管理和共享Node.js应用程序包的工具。它允许开发者在他们的项目中安装、管理和更新各种开源的Node.js模块和库。
依赖安装命令
npm i package --save 等同于 npm i package -S 等同于 npm i 等同于 npm install
npm i package --save-dev 等同于 npm i package -D
依赖写入方式
–save 会把包的版本信息写入到 package.json文件的dependencies下
–save-dev 则添加到package.json文件的devDependencies下
写入区别
dependencies是项目生产依赖
devDependencies是项目开发依赖
比如nodemon就是在开发node应用过程中自动检测文件的变化,当文件发生变化时,它会自动重新启动应用,从而加快了开发过程,但是在生产阶段就不需要,又比如babel将es6转化为es5同样是开发依赖。
dependencies和devDependencies中的依赖版本号解释
例子:~1.2.3
1表示主版本,2表示次版本,3表示补丁版本
依赖版本范围解释
* ,^,~ 分别代表允许更新到依赖的最新版本、次版本、补丁版本
可通过npm outdated查询版本范围信息
举例说明
以上述~1.2.3为例
作用:允许更新到补丁版本(Patch Releases)的最新版本,但会锁定主版本号和次版本号。
举例:如果指定版本是 ~1.2.3,那么允许安装任何 1.2.x 版本中最新的补丁版本,比如 1.2.4 或 1.2.5,但不会升级到 1.3.0。
其他亦是如此
总结
使用 ~ 时,会保留主版本号和次版本号,但允许更新补丁版本。
使用 ^ 时,会保留主版本号,但允许更新次版本号和补丁版本。
使用 * 时,可以匹配任何版本。