当尝试使用npm i命令安装npm包时,我得到了以下异常:

我尝试重新安装Node.js包,并使用以下方法将代理设置为关闭:

set HTTP_PROXY=
set HTTPS_PROXY=

问题仍然存在。我哪里做错了?

更新:

执行以下命令时:

npm install --legacy-peer-deps

系统显示如下错误:


当前回答

把Node.js降级到v14适合我。

使用这些命令:

source ~/.bash_profile
nvm use v14.16.1
npm install

其他回答

Use

npm install --legacy-peer-deps

这对我很管用。

您可以使用显示此错误的两种方式安装包

ERESOLVE unable to resolve dependency tree

使用npm Install并使用——legacy-peer-deps安装包

npm install --save --legacy-peer-deps

这是两个命令的组合 a.在npm config中设置legacy-peer-deps为true NPM配置设置为true b.现在使用npm install安装包 npm安装

把Node.js降级到v14适合我。

使用这些命令:

source ~/.bash_profile
nvm use v14.16.1
npm install

这与HTTP代理无关。

正如上面所说,您存在依赖冲突(不正确且可能被破坏的依赖),因此尝试使用——force或——legacy-peer-deps运行该命令。如果它不生效,临时解决方案是使用以前版本的Node.js(降低Node.js版本),因为它有时会导致这种错误发生。

根据OP的更新更新:

如你所见,它触发了以下错误:

@angular/http@^9.1.4没有找到匹配的版本。

看看angular/http页面。请注意,该已弃用包的最新版本是7.2.16,而您请求的是更高版本(例如,^9.1.4)!因此,请尝试检查项目依赖关系,并根据所提出的错误来解决问题。

最快的解决方案:npm install——legacy-peer-deps

解释:

在npm版本3到6中,peerDependencies不会自动安装,如果在树中发现无效的peer dependency版本,将会发出警告。从npm v7开始,默认安装了peerDependencies。 npm docs: peerDependencies

你的依赖包含一些peerDependencies,这些peerDependencies与根项目的依赖冲突。

正如npm ERR日志中描述的那样。