我有一个 node.js
项目。在这个项目中,我有依赖项 A
和依赖项 B
,我还注意到它的依赖项内的依赖项 A
具有依赖项 B
code>,所以我的问题是我应该安装依赖项 B
还是我可以从依赖项 A
使用它?
最佳答案
你可以,但是...
如果依赖项 A 不再依赖于 B 会发生什么?
因此,您应该将代码中所需的所有包添加为依赖项。
编辑
需要考虑的其他要点:
您的代码已针对代码版本 1.0.0 构建,并且 A 已将 B 所需的版本升级到代码版本 2.0.0。
假设依赖项 B 遵循 SEMVER,则版本 1.0.0 和版本 2.0.0 之间将发生重大重大更改。如果 B 不遵循 SEMVER,则可能随时应用重大更改。
NPM(Yarn 和其他包管理器)将处理这个问题,并为不同的包和整个项目提供正确的版本。这意味着包 B 的 1.0.0 版本将直接放入您的 node_modules
文件夹中,而包 B 的 2.0.0 版本将放入包 A 的 node_modules
文件夹中。
框架/库
当包含库、框架等时,通常会使用库/框架直接使用的包,即使您没有将它们放入引用中。
这应该保持在最低限度,并且只能根据库/框架文档,因为如果您需要升级库/框架(您应该经常这样做),它可能会导致复杂化。
关于javascript - 是否可以在我自己的项目中使用另一个包中的 npm 依赖项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70753175/