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

如何安装适配Angular CLI 12的完整NgRx Store 12版本?

正确安装适配Angular CLI 12的完整NgRx 12版本方案

我帮你搞定这个NgRx版本适配的问题——Angular CLI和NgRx的版本必须严格对应,你遇到的自动装13、缺失组件以及模块找不到的问题,都是因为版本匹配和安装方式不对导致的,按下面的步骤来就能解决:

第一步:清理残留的不兼容NgRx包

先把之前可能安装的不完整或高版本NgRx包彻底卸载,避免冲突:

npm uninstall @ngrx/store @ngrx/effects @ngrx/actions @ngrx/entity @ngrx/router-store @ngrx/operators --save
# 或者更彻底的批量卸载所有NgRx包
npm uninstall @ngrx/* --save

第二步:统一指定NgRx 12版本安装所有需要的组件

关键是要同时指定所有你需要的NgRx模块的12版本,不能单独只装store,否则npm会自动拉取其他模块的最新版本(比如13),导致依赖不匹配。执行下面的命令(把你需要的模块都列进去,比如store、effects、actions这些核心组件):

npm install @ngrx/store@12 @ngrx/effects@12 @ngrx/actions@12 @ngrx/entity@12 @ngrx/router-store@12 @ngrx/operators@12 --save

如果需要装开发依赖的调试工具(比如store-devtools),也要指定12版本:

npm install @ngrx/store-devtools@12 --save-dev

第三步:解决「Cannot find module '@ngrx/store'」错误

如果执行完安装还是报这个错,按下面的步骤排查:

  • 删除项目根目录的node_modules文件夹和package-lock.json(或yarn.lock)文件
  • 重新执行npm install,确保依赖完全重新安装
  • 检查你的tsconfig.json,确认compilerOptions里没有意外排除node_modules;如果还是有问题,可以尝试在compilerOptions.types里添加@ngrx/store(不过NgRx 12本身自带类型声明,一般不需要这一步)

第四步:验证安装成功

执行下面的命令查看NgRx版本,确认所有模块都是12.x:

npm list @ngrx/store

也可以在app.module.ts中导入Store模块测试:

import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { StoreModule } from '@ngrx/store';
import { AppComponent } from './app.component';

@NgModule({
  declarations: [AppComponent],
  imports: [
    BrowserModule,
    StoreModule.forRoot({}) // 测试导入是否正常
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }

如果没有报错,就说明安装成功了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.28 15:42:47