Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 如何修复npm未满足对等依赖警告?_Angularjs_Node.js_Npm_Npm Install_Angularjs Material - Fatal编程技术网

Angularjs 如何修复npm未满足对等依赖警告?

Angularjs 如何修复npm未满足对等依赖警告?,angularjs,node.js,npm,npm-install,angularjs-material,Angularjs,Node.js,Npm,Npm Install,Angularjs Material,我在Windows10上,有Node5.6.0和NPM3.6.0。我正在尝试将angular material和mdi安装到我的工作文件夹中npm安装角度材料mdi错误: +-- angular@1.5.0 +-- UNMET PEER DEPENDENCY angular-animate@^1.5.0 +-- UNMET PEER DEPENDENCY angular-aria@^1.5.0 +-- angular-material@1.0.6 +-- UNMET PEER DEPEN

我在Windows10上,有Node5.6.0和NPM3.6.0。我正在尝试将angular material和mdi安装到我的工作文件夹中npm安装角度材料mdi错误:

+-- angular@1.5.0

+-- UNMET PEER DEPENDENCY angular-animate@^1.5.0

+-- UNMET PEER DEPENDENCY angular-aria@^1.5.0

+-- angular-material@1.0.6

+-- UNMET PEER DEPENDENCY angular-messages@^1.5.0 `-- mdi@1.4.57

npm WARN enoent ENOENT: no such file or directory, open
'C:\Users\xxxxx\Desktop\ngClassifieds\package.json' 

npm WARN angular-material@1.0.6 requires a peer of
angular-animate@^1.5.0 but none was installed. 

npm WARN angular-material@1.0.6 requires a peer of angular-aria@^1.5.0
but none was installed. 

npm WARN angular-material@1.0.6 requires a peer of
angular-messages@^1.5.0 but none was installed.

如何解决此问题以安装AngularJS材料和MDI?

npm不再安装对等依赖项,因此您需要手动安装它们,只需在所需的DEP上执行
npm安装,然后再次尝试安装主依赖项


对评论的答复:

就在那条信息里,上面写着你错过了哪个部门

UNMET PEER DEPENDENCY angular-animate@^1.5.0 +-- 
UNMET PEER DEPENDENCY angular-aria@^1.5.0 +-- angular-material@1.0.6 +
UNMET PEER DEPENDENCY angular-messages@^1.5.0 `-- mdi@1.4.57` 

因此,您需要
npm安装angular angular angular angular angular angular动画angular aria angular material angular messages mdi

现在可用angular 2 rc.7,我在
rxjs@5.0.0-beta.12
未满足的对等依赖性

如果你像我一样,简单地将
@angular/…rc.6
替换为
@angular/…rc.7
——这是不够的。因为,例如,
@angular/router
没有
rc.6
版本


在这种情况下,如果未满足
package.json
文件中指定的一个或多个模块的依赖关系,则会引发“快速启动”中的better review In
未满足对等依赖关系的错误。
仔细检查警告并使用正确版本的依赖项更新
package.json
文件

然后跑

rm -rf node_modules/
npm cache clean
npm install
这将正确安装所有必需的依赖项。

对我很有用

npm install -g npm-install-peers

此错误最可能的原因之一可能是您在package.json中定义了旧版本。要解决此问题,请更改package.json中的版本以匹配npm所抱怨的版本


完成后,运行npm安装,瞧

好吧,所以我花了很长时间试图弄明白这一点。这是核选择,因为当你用尽所有其他方法

  • 在电脑上创建一个新文件夹
  • 下载全新安装的angular-我使用了以下指南:
  • 运行它,确保它工作正常
  • 然后从package.json文件中逐个安装依赖项
  • 在安装完每一个后运行它
完成后,它仍然可以工作,请将实际代码导入这个新项目。修复较新版本的angular Cause中的任何编译错误


这就是为我做的。。1小时的返工,而不是6小时的试图找出wtf的错误。。但愿我这样做是为了开始。

在我的情况下,所有依赖项都已经存在了。在这种情况下,请更新NPM,因为它可能已崩溃。它解决了我的问题

npm install -g npm

给出的答案并不总是有效的。如果它不能解决您的问题。确保在
包.json中使用了正确的符号。这对治疗头痛非常重要。例如:

warning " > @angular/compiler-cli@5.2.7" has incorrect peer dependency "typescript@>=2.4.2 <2.7".
warning " > tsickle@0.25.6" has incorrect peer dependency "typescript@>=2.4.2 <2.6".

警告“>@angular/compiler-cli@5.2.7“具有不正确的对等依赖关系”typescript@>=2.4.2tsickle@0.25.6“具有不正确的对等依赖项”typescript@>=2.4.2您可以通过全局安装未满足的依赖项来解决

示例:npm安装-g@angular/common@4.4.6

逐个安装。
这对我很有用。

编辑2020

npm install -g npm-install-peers
从npm v7.0.0开始,npm自动安装对等依赖项。这是升级到v7的原因之一

此外,本页还很好地解释了对等依赖的基本原理。


这个答案并不适用于所有情况,但是如果您不能通过简单地键入
npm install来解决此错误
,此步骤可能会有所帮助

假设你犯了这个错误

UNMET PEER DEPENDENCY packageA@4.2.0

npm WARN packageB@3.3.0 requires a peer of packageA@^3.1.0 but none was installed.
这意味着您安装了packageA的4.2.0版,但是packageB@3.3.0需要pakageA的3.x.x版本。()

因此,您可以通过将packageA降级到3.x.x来解决此错误,但通常您不希望降级该软件包。
好消息是,在某些情况下,packageB只是跟不上packageA,packageB的维护者正在努力将packageA的对等依赖关系提高到4.x.x.
在这种情况下,您可以检查npm或github中是否有更高版本的packageB需要4.2.0版本的packageA

例如,转到发布页面

通常情况下,你会发现像这样的依赖性的突破性变化

packageB v4.0.0-beta.0

BREAKING CHANGE
package: requires packageA >= v4.0.0
如果您在发布页面上找不到任何内容,请转到问题页面并按关键字(如
peer
)搜索问题。您可能会找到有用的信息

此时,您有两个选择

  • 升级到所需的版本
  • 暂时保留错误,等待稳定版本发布
  • 如果选择选项1:
    在许多情况下,该版本没有最新版本,因此不稳定。因此,您必须检查此更新中发生的更改,并确保任何内容不会中断

    如果选择选项2:
    如果PakaGa从版本3升级到4是微不足道的,或者如果PaKAGEB的维护者没有测试PakaGa版本4,但是说它应该没有问题,你可以考虑留下错误。 在这两种情况下,最好彻底测试它是否没有损坏任何东西


    最后,如果您想知道为什么必须手动执行此操作,

    如果您使用的是npm v6或之前的版本,您将收到此警告。在npm v7.0之后,npm开发团队声明他们将一起自动安装对等依赖项。因此,现在您不想手动安装对等依赖项

    您可以使用以下命令安装npm v7.0

    npm install -g npm@7
    

    从Github博客发布的中了解有关npm v7.0的更多信息。

    如果您希望保留当前版本的angular,您可以访问此网站,检查哪个版本的angular material最适合您当前的angular版本。您也可以。

    在尝试修复依赖项上的安全漏洞问题时,也会出现此问题

    以下是我所做的: 已审核的已安装依赖项

    npm audit
    
    如果有可用的修复程序,请运行
    npm upgrade
    
    npm list