在一个有角度的项目中,我们具有以下传递依赖性:
"dependencies": {
...
"angular-fancybox-plus": "^1.0.3",
给出下面的树(angular-fancybox-plus的最新版本是1.0.3
):
`-- [email protected]
+-- [email protected]
| `-- [email protected] deduped
`-- [email protected]
我的问题是:为什么解析的jQuery版本是3.3.1
?
angular-fancybox-plus
和fancybox-plus
都不限制版本:
"dependencies": {
"jquery": ">=2.1.4",
由于>=
运算符,已解析的版本是jquery的最新版本。该运算符允许任何大于或等于指定软件包的软件包(优先于最新软件包)。您可以通过转到https://semver.npmjs.com/并查看每个操作员的工作方式进行测试:
https://docs.npmjs.com/about-semantic-versioning
如果您要查找特定版本的jquery,则需要在fancybox软件包中手动使用~
补丁符号或^
次要发行版符号进行指定。