# package.json详解
# package.json里面dependencies版本符号含义
# 版本的格式
major.minor.patch
主版本号.次版本号.修补版本号
版本类型 | 版本详情 | 版本举例 |
---|---|---|
version | 必须完全匹配某版本 | abc: 1.2.2 |
>version | 必须大于某版本 | abc: >1.2.2 |
>=version | 大于或等于某个版本 | abc: >=1.2.2 |
<version | 必须小于某个版本 | abc: <1.2.2 |
<=version | 小于或等于某个版本 | abc: <=1.2.2 |
~version | 大概匹配某个版本 | 如果minor版本号指定了,那么minor版本号不变,而patch版本号任意 如果minor和patch版本号未指定,那么minor和patch版本号任意 例如:~1.1.2,表示abc: >=1.1.2 abc: <1.2.0, 可以是1.1.2,1.1.n 例如:~1.1,表示abc: >=1.1.0 abc: <1.2.0,同上 例如:~1,表示abc:>=1.0.0 abc:<2.0.0,可以是1.0.0, 1.0.1, 1.0.2, 1.0.n, 1.2.n, 1.n.n |
^version | 兼容某个版本 版本号中最左边的非0 数字的右侧可以任意 如果缺少某个版本号 则这个版本号的位置可以任意 | 例如:^1.1.2,表示abc: >=1.1.2 abc:<2.0.0, 可以是1.1.2, 1.1.n, 1.2.n, 1.n.n 例如:^0.2.3,表示abc: >=0.2.3 abc:<0.3.0, 可以是0.2.3, 0.2.4, 0.2.n 例如:^0.0,表示abc: >=0.0.0 abc:<0.1.0, 可以是0.0.0, 0.0.1, 0.0.n |
x-range | x的位置表示任意版本 | 例如:1.2.x, 可以表示1.2.0, 1.2.1, 1.2.n |
*-range | *通配符 | 例如:*,表示>=0.0.0的任意版本 |
version1-version2 | 区间 | 例如:1.0.0-2.0.0表示他们之间的任意版本 |
latest | 最新版本 |
注:因为大都采取的是^形式,所以每次下载依赖都可能大小不一致。