ngrx/store@6.1.0 在升级到 Angular 7 时需要 @angular/core@^6.0.0 的对等体
Posted
技术标签:
【中文标题】ngrx/store@6.1.0 在升级到 Angular 7 时需要 @angular/core@^6.0.0 的对等体【英文标题】:ngrx/store@6.1.0 requires a peer of @angular/core@^6.0.0 while upgrading to angular 7 【发布时间】:2019-03-29 10:35:47 【问题描述】:我尝试将 Angular 6 应用程序迁移到 Angular 7 应用程序并收到以下警告消息
npm WARN @ngrx/effects@6.1.0 requires a peer of @angular/core@^6.0.0 but none is installed.
You must install peer dependencies yourself.
npm WARN @ngrx/store@6.1.0 requires a peer of @angular/core@^6.0.0 but none is installed.
You must install peer dependencies yourself.
这是什么意思?
是不是说 angular 7 没有兼容的商店?
我的商店会不工作吗?
【问题讨论】:
升级过程中当前安装的库是 @angular/core 7.0 。这是否意味着我需要降级 【参考方案1】:更新:
NgRx 已更新至 6.1.2 以解决错误并与 Angular 7 兼容。
所以根据https://github.com/ngrx/platform/issues/1397,您可以忽略对等依赖项,它应该适用于 Angular 7。
安装:
npm install @ngrx/store@6.1.2
如果您想摆脱这些警告,您可以使用@ngrx/store@7
,通过这种方式安装Nightly builds
:
npm install github:ngrx/store-builds
然后你需要在你的系统中安装 git。
但请记住,@ngrx/store@7
仍然是测试版。
在上面给出的链接中,他们升级到NgRx 6.1.2
的原因是@ngrx/router-store
有一个角度为 7 的错误。
因此升级到 NgRx 6.1.2
使其可用并与 Angular 7 兼容,您可以忽略对等依赖项。
【讨论】:
升级过程中当前安装的库是 @angular/core 7.0 。这是否意味着我需要降级 是否需要降级 angular/core 版本才能使用 ngrx.没有意义 如果您需要使用ngrx/store@6.1.0
,那么您必须安装所需的角芯。卸载您当前的 Angular 核心库,然后安装 @angular/core@6.0.0
如果我安装了@angular/core@6.0.0,那么其他包都会受到影响。那么降级所有包有什么用。基本思路是升级到最新的
How do I deal with installing peer dependencies in Angular CLI?【参考方案2】:
你应该可以用下面的命令解决,
ng update @ngrx/store --next --force
【讨论】:
我试过这个。我仍然收到相同的警告。@ngrx/store@6.1.2 需要 @angular/core@^6.0.0 的对等体,但没有安装 使用 npm install @ngrx/store@6.1.2以上是关于ngrx/store@6.1.0 在升级到 Angular 7 时需要 @angular/core@^6.0.0 的对等体的主要内容,如果未能解决你的问题,请参考以下文章