脚手架搭建项目package.json配置中依赖的版本问题
# 依赖本版
## 版本范围控制
大版本.次要版本.小版本,如:1.0.0
| 版本 | 说明 | 含义 |
| 主版本(大版本) | 必须 | 一般代表了项目的重大架构变更,如进行不兼容的API更改 |
| 此版本(次要版本) | 必须 | 一般代表了一些功能的增加或变化,但没有架构的变化 |
| 增量版本(小版本) | 必须 | 一般是一些小的bug修复,没有重大功能变化 |
| 预发布版本或版本编译信息 | 不必须 | 添加到最后,作为扩展 |
## 版本匹配符
1.~会匹配最新的小版本依赖包,比如~1.2.3会匹配所有1.2.x版本,但不包括1.3.0
2.^会匹配最新的大版本依赖包,比如^1.2.3会匹配所有1.x.x版本,包括1.3.0,但不包括2.0.0
3.版本号用*代替,始终安装最新版本的依赖包
## 如何选择
1.指定版本号,不添加前缀匹配符,但如果依赖包发布新版本修复一些小bug,需要手动修改package.json文件
2.^版本,版本更新比较大,可能会造成项目代码错误
3.~版本,建议使用~来标记版本号,既可以保证项目不会出现大的问题,也能保证包中的小bug可以得到修复
参考地址:npm 依赖包版本号~和^的区别 - 简书 (jianshu.com)
https://stackoverflow.com/questions/22343224/whats-the-difference-between-tilde-and-caret-in-package-json

浙公网安备 33010602011771号