Npm 版本相关问题

1.库中的npm包引用同一个库的不同版本会报错吗?

2.包引用存在交集会怎么处理

  1. npm install 会下载哪一个版本?

问题1:

亲手做了一个实验:

A(依赖C:1.0.0),B (依赖C:2.0.0)

目录结构如下:

|-node_module

|-A

|-B

    |-node_module

              |-C:2.0.0

|-C:1.0.0

并没有报错,会同时存在2个C的版本

问题2:

亲自实验:

packageA:
depend C:>=1.5.0 <2.5.0

packageB:>=2.00 <3.0.0
depend C:>=1.5.0 <2.5.0

结果下载了 C:2.4.9
结论:会下载交集里面的最高版本

问题3:

亲自实验:

先发布 packageA@1.0.0  

再发布 packageA@2.0.0

再发布 packageA@1.0.1  

然后 npm install packageA 或者 npm install  packageA@latest 

下载的是packageA@1.0.1 而不是 packageA@2.0.0

说明npm install 下载的是最新提交的版本,而不是最高的版本