You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular 15升级至16后CoreModule引入StoreRootModule报错求助

问题解决:Angular 16升级后StoreRootModule导入报错

问题原因

Angular 16对NgModule的imports数组类型检查更加严格,不允许在imports中嵌套数组。你的代码中生产环境下直接返回了空数组[],导致Angular无法正确识别导入的模块类型,进而抛出StoreRootModule相关的错误。

解决方案

修改CoreModule中的imports数组,使用扩展运算符(...)展开条件返回的数组,确保所有导入的模块都处于imports的顶层数组中:

imports: [
  CommonModule,
  StoreModule.forRoot(appReducers, {
    metaReducers: [storageMetaReducer]
  }),
  EffectsModule.forRoot(appEffects),
  StoreRouterConnectingModule.forRoot({ stateKey: 'router' }),
  ...(!environment.production ? [StoreDevtoolsModule.instrument()] : [])
]

这样调整后,无论是开发环境还是生产环境,导入的模块都会被正确解析,不会再出现嵌套数组的问题,控制台的报错也会消失。

内容的提问来源于stack exchange,提问作者JaNith RathNayaka

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 09:42:04