项目 A 的依赖关系:
node_modules
├── B@1.0.0
│ └── node_modules
│ └── C@1.0.0
|__ C@2.0.0
B 模块使用 C 的内容,用的是 C@1.0.0,还是 C@2.0.0?
假设 B 定义了 peerDependencies:C@1.0.0,但是宿主提供的是 C@2.0.0:
node_modules
├── B@1.0.0
|__ C@2.0.0
这时候 npm install 会有警告,需要手动安装 C@1.0.0,那这时候 B 使用 C 的内容,会报错嘛,还是直接使用 C@2.0.0?