【问题标题】:repeated modules in "node_modules" of each module每个模块的“node_modules”中的重复模块
【发布时间】:2013-10-23 04:07:30
【问题描述】:

如何解决每个模块需要的重复模块的问题?我有 3 个模块,它们在自己的“node_modules”中有请求模块,每个模块都有不同的版本。

也许使用 npm install -g,npm 只下载一个。

但如果我使用这个,对所有人都一样,可能会在正确使用版本时出现问题。

NPM 解决这个问题?在 node_modules 的全局文件夹中创建不同版本的文件夹? 谢谢。

【问题讨论】:

  • 为什么重要?绝大多数包裹都很小,因此不会造成任何尺寸问题。
  • 我可以想出很多办法让它变得肮脏、凌乱或手动,但我很想知道一个正确的答案:D。虽然我不认为值得付出努力。

标签: node.js npm


【解决方案1】:

npm 有一个实验性(!)功能:

npm dedupe

(请参阅npm help dedupe 了解说明)

【讨论】:

    【解决方案2】:

    这正是 NPM 的设计方式。

    这背后的想法是每个模块自包含,这意味着它们不应该依赖更高的依赖项,它需要的一切都在其目录中。
    想象以下场景:

    • A 依赖于 B,版本范围 1.3.x
    • C 依赖于 B,最低版本 2.1.0

    如果 NPM 没有按照原来的方式设计,处理这种情况就不是一件容易的事。

    另外,您不能require() 全局模块。

    但是,您可以尝试使用npm dedupe 命令减少模块的重复 - 它会尝试为您简化复杂的模块树。

    【讨论】:

      猜你喜欢
      • 2014-09-20
      • 2018-07-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-02
      • 2011-07-09
      • 1970-01-01
      • 2015-11-25
      相关资源
      最近更新 更多