【问题标题】:Should I install npm packages that are dependencies of other installed packages?我应该安装依赖于其他已安装包的 npm 包吗?
【发布时间】:2021-01-30 02:29:52
【问题描述】:

如果我安装了一个 npm 包 foo,它具有依赖关系 bar,那么我可以在我的代码中使用 bar。是否有充分的理由继续使用npm install bar?例如。当foo 的维护者决定用新的东西替换bar 时?或者这是否被视为一项重大更改,在这种情况下我可能不得不调整我的代码?

【问题讨论】:

  • 是的,正是出于这个原因 - 如果您直接依赖它,请将其添加到您自己的 deps 列表中。这也允许您使用与您传递依赖的版本不同的版本。

标签: node.js npm package


【解决方案1】:

如果使用“bar”你正在执行 npm i “foo”,那么这意味着你直接依赖于“foo”而不是“bar”,它在任何地方都没有任何意义。有以下原因,

  1. 您可能遗漏了“foo”中未使用的“bar”包中的某些功能
  2. “foo”包中的任何错误和滞后都会直接影响到您,即使您没有使用它的任何部分
  3. 最后但并非最不重要的是,您所说的也是 100% 正确的

【讨论】: