当前位置: 首页 > 面试题库 >

如何自动安装npm对等项依赖关系?

柳俊健
2023-03-14
问题内容

例如,当我安装Angular2时:

npm install --save angular2
temp@1.0.0 /Users/doug/Projects/dougludlow/temp
├── angular2@2.0.0-beta.3 
├── UNMET PEER DEPENDENCY es6-promise@^3.0.2
├── UNMET PEER DEPENDENCY es6-shim@^0.33.3
├── UNMET PEER DEPENDENCY reflect-metadata@0.1.2
├── UNMET PEER DEPENDENCY rxjs@5.0.0-beta.0
└── UNMET PEER DEPENDENCY zone.js@0.5.11

npm WARN angular2@2.0.0-beta.3 requires a peer of es6-promise@^3.0.2 but none was installed.
npm WARN angular2@2.0.0-beta.3 requires a peer of es6-shim@^0.33.3 but none was installed.
npm WARN angular2@2.0.0-beta.3 requires a peer of reflect-metadata@0.1.2 but none was installed.
npm WARN angular2@2.0.0-beta.3 requires a peer of rxjs@5.0.0-beta.0 but none was installed.
npm WARN angular2@2.0.0-beta.3 requires a peer of zone.js@0.5.11 but none was installed.

是否可以传递给npm的魔术标志也将安装对等项依赖关系?我找不到一个……手动复制并粘贴对等项依赖关系并确保我具有正确的版本很繁琐。

换句话说,我宁愿不必这样做:

npm install --save angular2@2.0.0-beta.3 es6-promise@^3.0.2 es6-shim@^0.33.3 reflect-metadata@0.1.2 rxjs@5.0.0-beta.0 zone.js@0.5.11

有什么更好的方法?


问题答案:

npm 3明确删除了对等依赖项的自动安装,因为它引起的问题比它尝试解决的更多。例如,您可以在此处阅读有关信息:

  • https://blog.npmjs.org/post/110924823920/npm-weekly-5
  • https://github.com/npm/npm/releases/tag/v3.0.0

因此,不行,由于给定的原因,您无法使用npm 3或更高版本自动安装它们。



 类似资料:
  • npm是否有安装依赖作为对等依赖的选项,如yarn选项,而不是手动添加它例如: 感谢@Broncha,更新问题的更多说明 问题是如何向项目添加对等依赖。那就是 将依赖项添加到package.json中的“dependencies”中, 如何安装将其添加到package.json?中的“对等依赖”的依赖项

  • 问题内容: 我已经建立了两个RPM套件 取决于存在的文件,它在RPM软件包中正确反映,如下所示: 由于缺少依赖项,安装失败。 如何确保在安装过程中自动安装? 我确实按照此处所述尝试了该选项,但对我而言不起作用。 还有其他办法吗? 谢谢你的帮助。 问题答案: 创建一个(本地)存储库,并使用它来为您解决依赖关系。 CentOS Wiki有一个漂亮的页面,提供有关此操作方法的信息。CentOS Wiki

  • 问题内容: 我使用npm install命令反复收到npm对等依赖项错误。这是我的package.json,我对React和Webpack的对等依赖未得到满足 问题答案: 好吧,首先,这些不是错误,它们是警告。它们实际上并不会阻止您的代码运行,只是在您的依赖项有问题的情况下提醒您。 实际上,软件包是一种指定方式,“使用我,您还应该安装 y 软件包的 x 版本”。就您而言,有两个问题: __ 该版本

  • 输出以下警告: 输出 为什么npm抱怨缺少对等依赖? 这个问题与npm package.json文件中的依赖项、devdependency和peerdependency之间的区别不是重复的?。这个问题甚至没有提到,也没有解释在全局包中不搜索。

  • 我试图找出一个对等依赖性问题,对我来说一切都很好...... My 有: 有: staisfies , 不是吗?那么为什么抱怨: ???