# package 依赖项版本号说明
# 版本的格式
major.minor.patch
// 主版本.次版本.修订版本
// major: 新的调整不向后兼容
// minor: 新增功能,向后兼容
// patch: 修复bug,向后兼容
2
3
4
5
# 具体含义
version
必须匹配某个版本,如 1.0.0 表示必须依赖 1.0.0 版
>version
必须大于某个版本,如 >1.0.0 表示必须大于 1.0.0 版
>=version
必须大于或等于某个版本,如 >=1.0.0 表示可以等于 1.0.0 也可以大于 1.0.0 版
<version
必须小于某个版本,如 >1.0.0 表示必须小于 1.0.0 版
<=version
必须小于或等于某个版本,如 <=1.0.0 表示可以等于 1.0.0 也可以小于 1.0.0 版
~version
大概匹配某个版本,如果 minor 版本号指定了,那么 minor 版本号不变,patch 版本号任意,
如果 minor 和 patch 版本号未指定,那么 minor 和 patch 版本号任意。
如 ~1.1.1 表示 >=1.1.1 <1.2.0,可以是 1.1.1,1.1.2,...,1.1.n
如 ~1.1 表示 >=1.1.0 <1.2.0, 可以是 1.1.0,1.1.1,...,1.1.n
如 ~1 表示 >=1.0.0 <2.0.0, 可以是 1.0.0,1.0.1,...,1.n.n
^version
兼容某个版本,版本号最左边的非0数字的右侧可以随意,如果缺少某个版本号,则这个版本号位置可以任意。
如 ^1.1.1 表示 >=1.1.1 <2.0.0,可以是 1.1.1,1.1.2,...,1.n.n
如 ^0.1.1 表示 >=0.1.1 <0.2.0, 可以是 0.1.1,0.1.2,...,0.1.n
如 ^1.0 表示 >=1.0.0 <1.1.0, 可以是 1.0.0,1.0.1,...,1.0.n
如 ^1 表示 >=1.0.0 <2.0.0
x-range
x 的位置表示任意版本
如 1.0.x 表示可以是 1.0.0,1.0.1,...,1.0.n
*-range
任意版本,等同于空字符串
如 * === "" 表示 >=0.0.0
version1 - version2
表示 version1 到 version2 任意版
如 1.0.1 - 1.3.3 表示包含 >=1.0.1 <=1.3.3
range1 || range2
满足 range1 或 range2,可以多个范围
如 1.2.7 || >=1.2.9 <2.0.0 表示满足版本是 1.2.7 或者 大于等于 1.2.9 小于 2.0.0 的版本