gpt4 book ai didi

angular - 来自 ngrx 的关于运行时检查的警告

转载 作者:太空狗 更新时间:2023-10-29 17:29:54 25 4
gpt4 key购买 nike

我使用 ng update 将我的应用程序从 Angular 7 升级到 Angular 8。当我通过 ng serve 运行它时,我的控制台中打印了一条来自 ngrx 的警告:

@ngrx/store: runtime checks are currently opt-in but will be the default in the next major version with the possibility to opt-out, see https://ngrx.io/guide/migration/v8 for more information.

提供的链接中的文档讨论了 ngrx-store-freeze 被弃用的问题。但是,我的应用程序不使用 ngrx-store-freeze,而且我不知道什么是“运行时检查”。我需要更改代码中的哪些内容才能解决此警告的来源?

最佳答案

出现此警告是因为在 NGRX < 8 中,要使存储不可变,我们需要使用 ngrx-store-freeze 库。在 NGRX 8 中,您可以选择在没有 ngrx-store-freeze 的情况下使存储不可变 [因为它现在在 NGRX 8 中正在构建]。如果您通过在 StoreModule.forRoot 中指定 runtimeChecks 属性来选择店内不变性,则此警告将消失:

StoreModule.forRoot(rootReducer, {
runtimeChecks: {
strictStateImmutability: true,
strictActionImmutability: true
}
})

例子:

@NgModule({
imports: [
CommonModule,
StoreModule.forRoot(rootReducer, {
runtimeChecks: {
strictStateImmutability: true,
strictActionImmutability: true
}
}),
]
})
export class AppModule {}

引用:https://medium.com/ngrx/announcing-ngrx-version-8-ngrx-data-create-functions-runtime-checks-and-mock-selectors-a44fac112627

希望这对您有所帮助。

关于angular - 来自 ngrx 的关于运行时检查的警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57127658/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com