YARN/NPM:安装与某些依赖版本兼容的包版本

Evg*_*kov 6 javascript npm yarnpkg

假设我在package.json文件中有以下依赖项部分:

  "dependencies": {
    "A": "1.0.0"
  }
Run Code Online (Sandbox Code Playgroud)

同样,我们假设包 A 的当前版本是3.0.0. 但我的项目中需要版本1.0.0A所以我在package.json.

鉴于此,我们假设B我的项目中需要有另一个依赖于A. 最新版本B也是3.0.0,但是不兼容"A": "1.0.0"B与之兼容的正确版本"A": "1.0.0""B": "1.0.0".

问题是 -

如何检测与哪个版本的软件包B兼容"A":"1.0.0"

有没有办法自动安装依赖A并兼容的软件包版本"A": "1.0.0"

Bho*_*yar 2

不可以。在安装节点包时无法安装兼容包。您必须在 package.json 中手动指定它们。


但是,您可以尝试以下操作:

  1. 仅在 package.json 中为您的主包之一定义特定的包版本。

  2. 安装依赖项(主包)。npm install

  3. 不要指定主包的依赖模块版本。
  4. 安装依赖项。npm install DEPENDENCY_PACKAGE

这可能有效,因为据我记得,一旦我定义了主包而不是其依赖包,并执行了前面的方法并安装了兼容版本。(我已经定义了节点引擎版本。但我不确定这种方法是否也适用于其他包。)

请尝试告诉我这是否适合您。