angular - 我应该手动安装所有对等依赖项以删除 npm 警告吗?
问题描述
我通过npm
几个角度包安装,我有这个警告:
@angular/compiler-cli@7.2.5 requires a peer of typescript@>=3.1.1 <3.3
but none is installed.
You must install peer dependencies yourself.
a) 对等依赖和公正依赖有什么区别?
b)我现在应该安装什么来修复警告?
我的意思是,假设我安装了一个我知道的包“P”,但是这个 P 需要 X、Y 和 Z。我应该手动安装它们吗?好像不是很酷……
实际上,我安装了Angular
,但Angular
需要compiler-clr
和最新的需要typescript
。
当我看到这个警告时,我安装npm install typescript
了它安装了我的版本typescript@3.3.3
,但是这个 ***compiler-clr
需要 typescript@ <3.3
,我现在该怎么办?
对于这种类型的所有警告,我是否应该分析之前发布的打字稿版本3.3
等等?
解决方案
a)另一个依赖项的对等依赖项意味着前者可以与后者一起安装,而另一个依赖项的依赖项将前者与后者一起安装,而无需您做任何事情。
查看这个StackOverflow 问题peerDependencies
以获取有关和之间区别的完整信息dependencies
。
b)@angular/compiler-cli
(GitHub)包具有typescript
从版本3.1.1
到以下的对等依赖关系3.3.x
。
我建议您npm i -D typescript@~3.2.0
在项目的根目录中运行以安装v3.2.x
在minor
semver(语义版本器)范围内(查看NPM 的 semver 指南以获取更多信息)。
该npm i -D typescript@~3.2.0
命令执行以下操作:
i
表示您正在安装一个包。- 该
-D
标志表示您正在安装一个包并将其添加到devDependencies
您的对象中package.json
typescript@~3.2.0
表示要安装typescript
版本范围内的包3.2.x
,其中x
是一个数字。@~x.x.x
表示要安装“大约相当于 [the] version [specified (xxx in this case)]” - npm-package.json | npm 文档
如果您仍有任何疑问或不明白某件事,请在此答案中提出您的疑问。我会尽快回复以提供帮助。希望这个答案有帮助。
推荐阅读
- python - Flask 网页 - 需要显示用户列表并允许管理员选择多个条目
- sql - 使用 XML 数据对列进行 MSSQL 混淆
- laravel - 如何在 Laravel 中通过“ids”获取和分享不同网页的帖子?
- html - 无法获取褪色的浮动ui对话框;不显示在闪亮
- spring - 连接到 WebSocket 时 WebSocketClient 冻结(Spring WebFlux)
- kubernetes - 在工作节点(或)由于内存使用而挂起的节点中停止 Kubelet 服务使 MYSQL 无法在 Kubernetes 工作节点中正确终止
- spring - Spring Boot 找不到在外部目录中声明的属性文件
- java - IntelliJ Idea:关于 Java 11 上支持的注释处理器源版本“RELEASE_6”的 Maven 编译警告
- python - 我想将此数据从我的 spark rdd 转换为字典
- python - 处理无限数据流时在窗口结束后触发的事件